У кого-нибудь есть реальный пример однонаправленных отношений «многие ко многим»? - PullRequest
0 голосов
/ 17 декабря 2010

Кажется, что отношение многие ко многим всегда должно быть двунаправленным, поскольку каждая сторона, вероятно, заинтересована в доступе к коллекции другой стороны. Есть ли у кого-нибудь пример из реальной жизни, в котором отношение «многие ко многим» имело смысл быть однонаправленным.

1 Ответ

2 голосов
/ 17 декабря 2010

Простой пример,

// a Product can belong to many ProductCollections
class Product
{
    // some properties
}

// a ProductCollection can contain many Products
class ProductCollection
{
    public IList<Product> Products { get; private set; }    
    // ...
    // other collection properties
}

Возможно, вы захотите сгруппировать / организовать продукты в общие коллекции и позволить конечному пользователю создавать новые коллекции.

Некоторые коллекции используются для отображения продуктов на веб-сайте, другие - для администрирования (лицо A отвечает за ..., лицо B - за другие продукты), некоторые продукты хранятся в коллекции «нет в наличии», другие - в коллекции «необходимо обновить» и т. д. ...

В таком сценарии вы, скорее всего, всегда захотите получить продукты, используя определенную коллекцию.

И если вам нужны все коллекции, к которым принадлежит продукт, вы всегда можете написать для этого функцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...