2012-05-04 66 views
1

我視圖寬度列: ID, TREE_NODE_ID, ATTRIB_ID, INT_VALUE, DATE_VALUE, STRING_VALUE,的nhibernate映射錯誤

和表: ID, PARENT_ID, TREE_ID,

public interface ITreeNode 
    { 
     long Id { get; set; } 
     ITreeNode Parent { get; set; } 
// I want to get: 
     IDictionary<IAttribute, IAllTreeNodeValues> SpecTreeNodeValues { get; set; } 
    } 

public interface IAllTreeNodeValues 
    { 
     long Id { get; set; } 
     ITreeNode TreeNode { get; set; } 
     IAttribute Attribute { get; set; } 
     long? IntValue { get; set; } 
     DateTime DateValue { get; set; } 
     string StringValue { get; set; } 
    } 

fragment of mapping file: 
    <map name="SpecTreeNodeValues" lazy="true"> 
     <key column="TREE_NODE_ID"/> 
     <index-many-to-many column="ATTRIB_ID" class="Attribute"/> 
     <many-to-many class="AllTreeNodeValues"/> 
    </map> 

出現錯誤:來自表SpecTreeNodeValues的關聯指向未映射的類:GeneralData.Entity.Atribute

+2

類GeneralData.Entity.Atribute的檢查名字,也許你的意思'GeneralData.Entity.Attribute'。如果問題不在類名中,請更新問題。類'Atribute'未映射 – Kronos

+0

映射時:我從表SpecTreeNodeValues獲取SQl查詢,但它必須從表ALL_TREE_NODE_VALUES獲取數據,如何在設置 Alex

+0

=「SpecTreeNodeValues」lazy =「true」table =「ALL_TREE_NODE_VALUES」>出錯:外鍵(FK49254D5DDFC2DD97:ALL_TREE_NODE_VALUES [elt]))必須與引用的主鍵具有相同的列數(ALL_TREE_NODE_VALUES [TREE_NODE_ID,ATTRIB_ID]) – Alex

回答

0

你拼錯屬性在這裏:

<index-many-to-many column="ATTRIB_ID" class="Atribute"/>