如何使用Nhibernate将主键添加到组件表中?
问题描述:
我有一个使用Fluent Nhibernate配置的Nhibernate应用程序。如何使用Nhibernate将主键添加到组件表中?
在应用程序启动时,使用SchemaUpdate自动生成数据库模式。
该模型具有组件,该组件在数据库上以无主键的表的形式创建。
数据库需要使用MS SQL Server事务复制进行复制,该复制需要所有表上的主键。
有没有方法让架构更新工具将主键应用于这些表?
问候
答
组件在NHibernate的通常完全包含引用对象的对象
以下是从Fluent-Nhibernate Mapping Documentation - ComponentMap<T>
public class Address
{
public int Number { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string PostCode { get; set; }
}
public class Person
{
public int Id { get; set; }
public Address Address { get; set; }
}
public PersonMap()
{
Id(x => x.Id);
Component(x => x.Address, m =>
{
m.Map(x => x.Number);
m.Map(x => x.Street);
m.Map(x => x.City);
m.Map(x => x.PostCode);
});
}
数据库应
表:人
- 编号
- 数
- 街
- 市
- 邮编
链接:
你在说流利NHibernate的ComponentMaps吗?也许你可以给出一个你正在谈论的示例映射。 –