2013-03-17 2 views

답변

1

예는 아마도이 작업을 수행하는 Model을 만들어야 할 것입니다 :

public class Tag 
{ 
    [Key] 
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] 
    public int TagId { get; set; } 

    public string Name { get; set; } 

    public virtual ICollection<Synonym> Synonyms { get; set; } 
} 

그런 다음 동의어 모델 :

public class Synonym 
{ 
    [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
    [HiddenInput(DisplayValue = false)] 
    public int SynonymId { get; set; } 

    [ForeignKey("Tag"), DatabaseGenerated(DatabaseGeneratedOption.None)] 
    public int TagId { get; set; } 

    public string Name { get; set; } 

    public virtual Tag Tag { get; set; } 
} 
1

당신은 엔티티 클래스를 포장하거나 것

public class Synonym 
{ 
    int SynonymId {get; set;} 
    string Synonym {get; set;} 
} 

또는 별도의 문자열 필드에 컬렉션을 평평하게

예컨대 :

public class Tag 
{ 
    [Key] 
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] 
    public int TagId { get; set; } 

    public string Name { get; set; } 
    public string SynStore {get; set;} 
    public IEnumerable<string> Synonyms 
{ 
    set { SynStore = String.Join(',', value);} 
    get{ return SynStore.split(','); } 
} 
} 
관련 문제