FluentNHibernate:让Examples.FirstProject工作

时间:2009-03-23 20:31:55

标签: fluent-nhibernate

我试图让最基本的例子在FnH中运行。我从Examples.FirstProject开始。但是,我没有使用SQL lite配置。相反,我将配置设置为SQL2005并创建表,如示例中所示。

当单步执行代码时,创建会话工厂时似乎没有问题。但是当代码到达“transaction.commit”行时,我确实收到错误。错误如下:

Could not insert collection: [Examples.FirstProject.Entities.Store.Products#5][SQL:SQL not available]

我想知道在SQL Server中创建表的方式是否存在问题。 ID为“int”类型,名称等为“varchar(50)”。我将Store,Product和Employee的PK设置为各自的ID字段。我还自动将ID增加1(SQL Server中的IdentitySpecification列属性)。 StoreProduct是多对多的,并且每个图表都有。

任何帮助将不胜感激。感谢。

3 个答案:

答案 0 :(得分:1)

您是否以更改数据库提供的方式修改了示例?您是否能够保存样本中的任何实体(即,如果您删除Products代码并只保存Store)?

我针对SQLExpress开发了这个示例,所以我认为不会与SQL 2005有任何不兼容性。

此外,这个问题可能更适合Fluent NHibernate mailing list,因为Stack Overflow不适合这类调查发布。

答案 1 :(得分:0)

谢谢詹姆斯。我将介绍如何使用Fluent NHibernate邮件列表。作为我的问题的解决方案,我确实简化了一些示例,并发现重建表有所帮助。在之前的尝试中,我在数据库图表工具中构建了表格。这就是我觉得有点不对劲的地方。刚才我使用菜单重建它们,仍然使用Database Diagram部分进行外键连接。工作就像一个魅力。再次感谢并与FnH保持良好的合作。

答案 2 :(得分:0)

要检查的第一件事:您确定在SQL Server中确实创建了正确的表,并且架构是否正确?您可以使用SQL Express management studio来查看sql数据库来验证这一点。