.net - 流畅的 NHibernate 映射

标签 .net fluent-nhibernate

我是 NHibernate 和 Fluent NHibernate 的新手。

假设我有如下情况

Table Activities (uniquidentier ID, varchar ActivityName)
Table ActivityParameters(uniqueidentifier ID, varchar ParameterName,
 varbinary(8000) ParameterValue)

以及下面的类

public static Acivity
{
     .......
     public virtual Guid Id {get; private set;}      
     public virtual string ActivityName {get; private set;}
     public virtual IDictionary<string, object> ActivityParameters {get; private set;}
}

如何编写类映射?更具体地说,我如何编写事件参数​​的映射?

最佳答案

一位同事将 e 指向 this site .

根据这次讨论,我得出了

Table("Activities");
        Id(x => x.Id).Column("ID").GeneratedBy.Guid();
        Map(x => x.ActivityName).Not.Nullable().Length(50);
        HasMany(x => x.ActivityParameters)
            .KeyColumn("ActivityID")
            .AsMap<string>(idx => idx.Column("ParameterName"), elem => elem.Column("ParameterValue"))
            .Not.LazyLoad()
            .ForeignKeyCascadeOnDelete()
            .Table("ActivityParameters");

我必须测试一下。

关于.net - 流畅的 NHibernate 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1335859/

相关文章:

c# - LINQ to SQL 表达式 "Orderby"帮助

c# - 修改进程调用的 dll 方法,无需进程重启

c# - 是否可以使用工厂方法使用流利的 nhibernate 创建类的实例?

nhibernate - Fluent NHibernate - 将单个表的部分映射到具有几个共享字段的多个类

NHibernate 代码优先迁移管理工具,如 EntityFramework、Django-South

nhibernate - 字符串值的长度超过映射/参数中配置的长度

c# - 如何检查对象是否已在 C# 中释放

c# - 使用 .NET 在 mySQL 中保存机器人状态数据

c# - NHibernate 3 或 4 等同于 Entity Framework Include

c# - Hierarchyid 数据类型和 Code First