2011-03-19 6 views
0

유창한 참조 키에서 자동 매핑에 문제가 있습니다.중복 된 참조 키 - Fluent NHibernate 자동 매핑

CREATE TABLE "ConfigurationCategory" 
    ... 
    parent_id uuid, 

    configurationcategory_id uuid, 

    CONSTRAINT "ConfigurationCategory_pkey" PRIMARY KEY (id), 

    CONSTRAINT fk6ccc850055890dc8 FOREIGN KEY (configurationcategory_id) 
     REFERENCES "ConfigurationCategory" (id) MATCH SIMPLE 
     ON UPDATE NO ACTION ON DELETE NO ACTION, 

    CONSTRAINT fk6ccc8500ee71b726 FOREIGN KEY (parent_id) 
     REFERENCES "ConfigurationCategory" (id) MATCH SIMPLE 
     ON UPDATE NO ACTION ON DELETE NO ACTION 

왜 ConfigurationCategory가 중복 다음 SQL 출력에

public class ConfigurationCategory 
{ 

    public virtual Guid Id { get; private set; } 

    [NotNull] 
    public virtual String Name { get; set; } 
    public virtual String Description { get; set; } 
    public virtual String Icon { get; set; }  

    public virtual ConfigurationCategory Parent { get; set; } 

    public virtual IList<ConfigurationCategory> Children { get; private set; } 

    public ConfigurationCategory() 
    { 
     Children = new List<ConfigurationCategory>(); 

    } 
} 

결과 : 예한다는 것입니까?

답변

1

저는 유창한 오토 맵핑을 사용하지 않았지만, 부모와 자녀의 속성이 모두 있다는 사실에 혼란 스럽습니다. 저는 유창한 사람들이 둘 다 데이터베이스의 동일한 열에 의해 처리 될 수 있다는 것을 알 수 없다고 생각합니다.

아마도 ClassMap을 만들고 References() 및 HasMany() 호출에 대해 키 열 이름을 지정해야합니다.