【发布时间】:2012-01-04 21:00:43
【问题描述】:
我是 NHibernate 的新手,所以我不确定我是否可以在这里提问。但是这里有。
这是我的问题:
我正在使用 Orchard CMS 构建网站。所有的 Orchard 表都由 NHibernate 映射。我在同一个数据库中也有 NHibernate 未映射的表。这些表格由客户提供。我需要使用 Orchard 查询这些表并在前端显示数据。我必须保持表模式完好无损。我有一个关于如何使用 NHibernate 映射表的教程,但是我在教程中看到的所有内容都要求表有一个 ID 列作为主键。客户提供给我的所有表格都没有将 ID 作为第一个/主键列。是否可以不使用 ID 方法映射到这些表?还是 ID 方法的变体?
Id(x => x.Id);
我可以使用以下方法映射到表格:
MyColumnName/Primarykey(x => x.Id);
或
Id(x => x.MyColumnname/PrimaryKey);
同样,此时我无法将数据迁移到 NHibernate 映射的新表中,并且表架构必须保持完整。由于客户每晚更新这些表。
感谢任何帮助。
谢谢
【问题讨论】:
-
表有主键吗?
-
是的,他们确实有主键。它们只是不是 ID 列。例如,其中一个表中的主键和第一列是:TopicCode(First column/Primary key。这会工作吗?Id(x => x.TopicCode); Map(x => x.BrochureDesc); Map(x => x.URL);地图(x => x.ControlPrice);地图(x => x.City);地图(x => x.Country);
-
您是使用 Fluent Nhibernate 还是 Loquacious 映射来映射您的表?
-
我正在使用 FluentNHibernate.Mapping;
-
射击。克里斯,您的评论消失了。可以转发吗?
标签: nhibernate orm fluent-nhibernate mapping orchardcms