我有以下两个表(SQL Server):
**IndexValues**
IdIndexValue int (PK)
Value varchar(2000)
IdIndex int (FK for Table Indexes)
IdDocument int (FK for Table Documents)
**IndexValuesLists**
IdIndexValueList int (PK)
IdIndexValue int (PK with IdIndexValueList, FK for Table Indexes)
稍微解释一下,第二个表将第一个表中的项目分组。文档可以在第二个表中具有各种“组项”。我有以下BusinessObjects类:
IndexValue {
int Id;
string Value;
Document Document;
Index Index;
}
IndexValueList {
int Id;
Document Document;
List<List<IndexValue>> IndexesValues;
}
我不知道如何为最后一个属性进行映射。如何在hbm.xml上执行此操作?
编辑:举例说明我需要的内容:
IndexValues行:
IdIndexValue / Value / IdIndex / IdDocument
1, "A", 10, 500
2, "Circle", 11, 500
3, "John", 12, 500
4, "B", 10, 500
5, "Square", 11, 500
6, "Mary", 12, 500
======================
IndexValuesLists行:
IdIndexValueList / IdIndexValue
1, 1
1, 2
1, 3
2, 4
2, 5
2, 6
答案 0 :(得分:1)
列表列表似乎不是NHibernate开箱即用的那种东西。 (如果真的对你来说意义重大,当然,你可以自己实现对这种情况的支持。)
比这更深,您的域模型似乎有点太奇怪了。为什么你有一个索引列表列表?也许您需要一个具有索引值列表的新域实体,并将列表列表替换为此新域实体的列表?