Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用可为空的类型时发生NHibernate.MappingException_Nhibernate_Nullable_Mappingexception_Andromda - Fatal编程技术网

使用可为空的类型时发生NHibernate.MappingException

使用可为空的类型时发生NHibernate.MappingException,nhibernate,nullable,mappingexception,andromda,Nhibernate,Nullable,Mappingexception,Andromda,我使用nhibernate访问我的数据库,andromda生成我的映射文件。 只要我不使用可为空的数据类型,所有这些都可以正常工作。 我正在尝试的是让一个实体的属性类型为Nullables.NHibernate.NullableInt32Type。我的数据库与类型为“int NULL”(SQL Server)的列具有对应关系。 相应的类也具有正确的数据类型(int?)。 但当我尝试获取数据库的值时,会得到一个NHibernate.MappingException: NHibernate.Mapp

我使用nhibernate访问我的数据库,andromda生成我的映射文件。 只要我不使用可为空的数据类型,所有这些都可以正常工作。 我正在尝试的是让一个实体的属性类型为Nullables.NHibernate.NullableInt32Type。我的数据库与类型为“int NULL”(SQL Server)的列具有对应关系。 相应的类也具有正确的数据类型(int?)。 但当我尝试获取数据库的值时,会得到一个NHibernate.MappingException:

NHibernate.MappingException:指定的映射信息无效 对于类型Namespace.SummaryAttribute,请检查映射文件中的 属性类型不匹配 ---->System.InvalidCastException:这是一个长期的问题


没有财产“小数点位”所有作品罚款。即使我将属性更改为简单数据类型int


有人知道问题可能是什么吗?

只需从映射中删除
type
属性即可。NHibernate将自己计算类型,因此您应该:

<property name="DecimalPlaces">
    <column name="DECIMAL_PLACES" not-null="false" unique="false" sql-type="INT"/>
</property>

只需从映射中删除
类型
属性即可。NHibernate将自己计算类型,因此您应该:

<property name="DecimalPlaces">
    <column name="DECIMAL_PLACES" not-null="false" unique="false" sql-type="INT"/>
</property>


您使用的是什么版本的nhibernate?您使用的是什么版本的nhibernate?我也会先尝试一下。。。并且还删除了NOTNULL、unique和sql类型。。。如果是
,我也会先尝试一下。。。并且还删除了NOTNULL、unique和sql类型。。。使其成为