NHibernate 3.2 By Code(Conformist)ClassMapping For Dictionary Property
假设我有一个“SomeClass”类,它有一个查找字典:DataDictionary;
我目前在SomeClass.hbm.xml中有一个映射,如下所示:
我想使用NHibernate的新版本(版本3.2)按代码映射。 我如何映射上面的字典属性?
目前我有:
public class SomeClassMap :ClassMap { public SomeClassMap() { Id(x => x.ID, mapping => mapping.Generator(Generators.Guid)); Map(x = x.DictionaryProperty, mapping => { mapping.Key(k => k.Column("SomeClassID")); mapping.Table("SomeClassData"); }); } }
大多数情况下,我不知道如何指定索引的等价物和字典映射的元素。
字典映射的每个部分都需要一个单独的委托:
Map(x => x.DictionaryProperty, mapping => { mapping.Key(k => k.Column("SomeClassID")); mapping.Table("SomeClassData"); }, mapping => mapping.Element(k => k.Column("Key")), mapping => mapping.Element(k => k.Column("Value")));
第一个Element
是map-key
( index
对于map
是过时的),第二个是element
。