我应该使用Get还是Load-nhibernate?

我应该使用Get还是Load-nhibernate?,nhibernate,Nhibernate,我想知道在这种情况下我应该使用哪一种。我有一个下拉列表,可以将值发送回服务器。服务器当前使用加载并生成对象。然后,它从中获取一个值,并尝试将其转换为枚举 在阅读了一些内容之后,我似乎应该使用Get,因为我需要从对象中访问一些东西,而不是PK。Get和Load如果启用了延迟加载,则它们是不同的。 如果使用方法Load,NHibernate不会从数据库检索实体,而是创建一个代理对象,唯一填充的属性是ID。 如果访问其他属性,NHibernate将从DB加载实体 因此,在您的情况下,最好的使用应该是G

我想知道在这种情况下我应该使用哪一种。我有一个下拉列表,可以将值发送回服务器。服务器当前使用加载并生成对象。然后,它从中获取一个值,并尝试将其转换为枚举


在阅读了一些内容之后,我似乎应该使用Get,因为我需要从对象中访问一些东西,而不是PK。

Get
Load
如果启用了延迟加载,则它们是不同的。 如果使用方法
Load
,NHibernate不会从数据库检索实体,而是创建一个代理对象,唯一填充的属性是ID。 如果访问其他属性,NHibernate将从DB加载实体


因此,在您的情况下,最好的使用应该是Get。

Get
Load
在启用延迟加载时是不同的。 如果使用方法
Load
,NHibernate不会从数据库检索实体,而是创建一个代理对象,唯一填充的属性是ID。 如果访问其他属性,NHibernate将从DB加载实体


因此,在您的情况下,最好使用Get。

通常,如果您需要访问除Id本身以外的属性,请使用
Get
;这使得代码的意图更加清晰,从长远来看可能更有效<如果在创建或更新实体时需要设置FK关系,而无需对数据库进行不必要的往返,则代码>加载非常有用


要进一步阅读,请查看更详细的说明。

通常,如果需要访问Id本身以外的属性,请使用
Get
;这使得代码的意图更加清晰,从长远来看可能更有效<如果在创建或更新实体时需要设置FK关系,而无需对数据库进行不必要的往返,则代码>加载非常有用

要进一步阅读,请查看更详细的描述