2017-11-10 11 views
1

설명과 메시지를위한 간단한 시스템입니다. 내 코드는 다음과 같이 있습니다 ... FromActor 및 ToActor :MVC 코드 첫 번째 탐색 속성을 사용합니다.

public class Comment 
{   
    public int Id { get; set; } 
    public string Title { get; set; } 
    public string Text { get; set; } 
    public virtual Actor AboutActor { get; set; }   
    public virtual Actor FromActor { get; set; } 
} 

public class Message 
{ 
    public int Id { get; set; }  
    public string Title { get; set; }  
    public string Text { get; set; }  
    public virtual Actor ToActor { get; set; } 
    public virtual Actor FromActor { get; set; } 
} 

public class Actor 
{  
    public int Id { get; set; }  
    public string Username { get; set; } 
    public virtual List<Comment> Comments { get; set; } 
    public virtual List<Message> Messages { get; set; } 
} 

내가 첫 번째 코드 탐색 소품에 문제에있어 그들은 또한 두 배우가있다. 사실입니까? 솔루션 탐색 링크 또는 모델을 어떻게 편집해야합니까? 감사 ...

답변

0

CommentMessage102에 대한 참조를 Actor 클래스에 추가하고 InversePropertyAttribute을 사용하여 해당 속성과 매핑해야합니다. 또한 직접 FK을 선언 할 수 있습니다.

public class Comment 
{   
    //other stuff... 
    public int AboutActorId { get; set; }   
    public int FromActorId { get; set; } 
    public virtual Actor AboutActor { get; set; }   
    public virtual Actor FromActor { get; set; } 
} 

public class Message 
{ 
    //other stuff... 
    public int ToActorId { get; set; }   
    public int FromActorId { get; set; } 
    public virtual Actor ToActor { get; set; } 
    public virtual Actor FromActor { get; set; } 
} 

public class Actor 
{  
    public int Id { get; set; }  
    public string Username { get; set; } 

    [InverseProperty("AboutActor")] 
    public virtual ICollection<Comment> CommentsAbout { get; set; } 
    [InverseProperty("FromActor")] 
    public virtual ICollection<Comment> CommentsFrom { get; set; } 

    [InverseProperty("ToActor")] 
    public virtual ICollection<Message> MessagesTo { get; set; } 
    [InverseProperty("FromActor")] 
    public virtual ICollection<Message> MessagesFrom { get; set; } 
} 
+0

내 모든 존경심으로 ... 감사합니다 :) InverseProperty는 내 솔루션입니다. – Aykarnz