Code-First: How to create a many to many relationship where the source class/table is the target one as well?

StackOverflow https://stackoverflow.com/questions/4380256

سؤال

Can someone please post an example on how to create a many to many relationship where the source class is also the target one, using code-first ?

Something like:

Toys * <-----> * Toys

Thank you.

Nuno Senica

هل كانت مفيدة؟

المحلول

I don't think this is possible with EF Code First. As a workaround, you could create the mapping table yourself:

public Toy
{
    public int ToyID {get; set;}
    public ICollection<ToyMapping> Toys {get; set;}
}

public ToyMapping
{
    public int ToyOneID {get; set;}
    public int ToyTwoID {get; set;}

    public ICollection<Toy> ToyOnes {get; set;}
    public ICollection<Toy> ToyTwos {get; set;}
}

I'm not sure the actual use-case for this is, otherwise I would have made better named properties.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top