我已经下载了Fluent NHibernate源代码发行版,在解决方案中编译了所有项目,然后运行Examples.FirstProject。方法BuildSessionFactory()中的FluentConfiguration.cs中发生异常:创建SessionFactory时使用了无效或不完整的配置。我应该怎么做才能避免这种例外情况?
PS我看到了this帖子,但对我没有帮助
编辑:异常消息“以下类型不能用作代理:\ nExamples.FirstProject.Entities.Employee:方法set_Id应该为'public / protected virtual'或'protected internal virtual'\ nExamples.FirstProject.Entities.Product :方法set_Id应该是“公共/受保护的虚拟”或“受保护的内部虚拟” \ nExamples.FirstProject.Entities.Store:方法set_Id应该是“公共/受保护的虚拟”或“受保护的内部虚拟”“字符串
Exception Source:“ NHibernate”
Exception StackTrace:d:\ CSharp \ NH \ NH \ nhibernate \ src \ NHibernate \ Cfg \ Configuration.cs:NHibernate.Cfg.Configuration.Validate()的NHibernate.Cfg.Configuration.ValidateEntities()处的StackTrace在d:\ CSharp \ NH \ NH \ nhibernate \中的NHibernate.Cfg.Configuration.BuildSessionFactory()中的d:\ CSharp \ NH \ NH \ nhibernate \ src \ NHibernate \ Cfg \ Configuration.cs:line 958 \ r \ n中src \ NHibernate \ Cfg \ Configuration.cs:line 1250 \ r \ n在C:\ _ WorkProjects \ _nHibernate \ jagregory-fluent-nhibernate-c24de5a \ src \ FluentNHibernate \ Cfg \ FluentConfiguration中的FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() cs:line 231“字符串
转到(Examples.FirstProject->实体->和(Employee.cs,Product.cs和Store.cs)中]
更改ID属性从:
public virtual int Id { get; private set; }
收件人:
public virtual int Id { get; set; }
您的类型,Examples.FirstProject.Entities.Employee应该将ID属性设置为
public virtual int ID { get; set; }