我有以下映射:
public class MyClassMap : ClassMap<MyClass>
{
public MyClasseMap()
{
Table("TABLE_NAME");
Id(x => x.Id).Column("TR_ID");
}
}
当我尝试使用条件对象检索所有实体时,我得到以下内容:
System.FormatException : Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
at NHibernate.Loader.Loader.DoList(ISessionImplementor session,QueryParameters queryParameters) 在NHibernate.Loader.Loader.List(ISessionImplementor session,QueryParameters queryParameters,ISet`1 querySpaces,IType [] resultTypes) 在NHibernate.Impl.SessionImpl.List(CriteriaImpl标准,IList结果) 在NHibernate.Impl.CriteriaImpl.List(IList结果) 在NHibernate.Impl.CriteriaImpl.ListT
尝试了所有类型的映射变体。还是行不通。还使用流畅的nhibernate的最新二进制文件(#596)。我如何让它工作?
答案 0 :(得分:0)
实体看起来像这样:
public class Entity
{
public Guid Id {get;set}
}
该属性不是虚拟的,因为我已禁用延迟加载。
数据库是sqlserver2008(企业版64位),列的数据类型是“uniqueidentifier”。我使用的操作系统是Windows 7。
我还有其他实体,其中Id和Pk是int,它们运作良好。