2010-03-30 1 views
3

У меня есть несколько классов:Моделирование классовых отношений

Article 
------- 
Content 
ID 

Magazine 
-------- 
Name 
Code 

и 3 таблицы в базе:

Articles 
Magazines 
ArticlesInMagazines (two fields: IDArticle and CodeMagazine) 

В моем приложении, у меня есть модуль для управления статьями, и DataGridView к относятся связанные с ними журналы

DataGridView имеет twofields:

MagazineCode 
IsPublished (indicates articles which have been published in this magazine). 

В той же статье может быть во многих журналах (1: N)

Как бы реализовать на модели?

Статья должна иметь поле: Список ?? Я обеспокоен тем, что журнал ассоциируется Статьи

ответ

1

Я не совсем уверен в вашем вопросе, однако, если вам могут потребоваться журналы accessign, в которых одна статья была опубликована больше, чем доступ к статьям в одном журнале, то вы можете отменить ассоциацию , Если это не так, вы можете использовать две ассоциации, которые будут использовать много дискового пространства и некоторые работы при создании и обновлении статей или журналов. Другой способ - вычислить другую ассоциацию по требованию, которая может включать итерацию по всему набору статей или журналов, что может быть разумным, например. когда есть несколько Журналов. Однако это можно улучшить с помощью memoization или кеширования. В литературе много написано о том, как обращаться с ассоциациями 1: n и m: n, решение зависит от вашей конкретной настройки.