Одата отношения многих ко многим - PullRequest
1 голос
/ 21 февраля 2020

Я занимаюсь разработкой сервиса odata (4.0) и пытаюсь вызвать связанные объекты (контроллер работает с книгами, я хочу получить категории). Для этого я создал три модели, которые описывают отношения многие ко многим.

public class Book
{
    public int BookId { get; set; }
    public string Title { get; set; }
    public virtual ICollection<BookCategory> BookCategories { get; set; }
}

public class Category
{
    public int CategoryId { get; set; }
    public string CategoryName { get; set; }
    public virtual ICollection<BookCategory> BookCategories { get; set; }
}

public class BookCategory
{
    public int BookId { get; set; }
    public int CategoryId { get; set; }
    public Book Book { get; set; }
    public Category Category { get; set; }
}

Внутри класса запуска я настроил отношения между Book и BookCategory.

builder.EntitySet<Book>("Book").HasManyBinding(x => x.BookCategories, "BookCategories");

Что ж, теперь я могу получить Записи BookCategories, и если я раскрою Category из BookCategories, я получу запись в категории. Но для меня у меня есть дополнительная ссылка на URL - BookCategories.

Знаете ли вы, как реализовать многие ко многим без BookCategories, например, URL должен выглядеть следующим образом: http://ip: port / книги (п) / категории

...