0

我使用 NHibernate 来持久化我的对象。但是,我似乎找不到任何关于是否需要对输入进行编码的信息?

例如:

string firstName = TextboxFirstName.Text;
string lastName = TextboxLastName.Text;

using(ISession session = sessionFactory.OpenSession())
{
    Customer customer = new Customer(firstName, lastName);
    session.SaveOrUpdate(customer);         
}

我是否需要编码firstNamelastName(特别是单个 qoutes),或者 NHibernate 是否为我这样做?

4

2 回答 2

3

Hibernate 将为您处理所有这些。在这种情况下,属性只需要是字符串。

于 2009-12-07T16:21:31.563 回答
0

Customer实例只是域模型中的一个对象。就是这样。NHibernate 就在幕后——它是一个窗口,您可以通过它访问您的域模型。

NHibernate 确保您的域模型正确持久化。它无需您做任何事情就可以做到这一点,例如对对象的字符串属性进行编码。

此外,如果您正在创建一个新Customer实例,并且希望将新实例通知 NHibernate,那么您应该使用 API 方法ISession.Save,而不是ISession.SaveOrUpdate. API 方法ISession.Save会将新实例保存到域模型中(并且透明地保存到数据库中)。

于 2009-12-07T16:24:52.587 回答