[英]NHibernate property config
在NHibernate中,我有此配置。
<property name="Name" type="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a222222229">
<column name="Name" />
</property>
这些是什么意思? msconrlib,版本,区域性,publicKeyToken? 为什么我们需要这些? 我在Java env中研究过Hibernate,所以我从不使用这些标签。
谢谢
类型描述了用于该属性的.Net CLR类型。 在这种情况下,是普通字符串。
在这种情况下,您不必指定它。 在某些情况下,您想指定它,例如在使用自定义类型时。 或者当您想映射DateTime时。
关于类型各部分的含义:类型为System.String,关于程序集名称,区域性和版本非常精确地描述。 publicKeyToken是程序集强名称的密钥-只要使用不同的密钥对程序集名称进行签名,就可以使用重复的程序集名称。
您可以将此映射编写为
<property name="Name">
<column name="Name" />
</property>
要么
<property name="Name" type="String">
<column name="Name" />
</property>
但是,如果您想在某个程序集中使用自定义类型,则需要指定是否像现在这样更详细。
在MS .Net中,它称为“强程序集”名称。 这是在.Net Framework中标识特定类型的方式。 因此,此特定字符串说明要使用mscorlib库4.0版中的System.string。 没有本地化偏好。 这允许.Net使用部署到GAC的程序集-全局程序集缓存,该程序充当系统dll的全局目录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.