Руководство по составным приложениям (PRISM) и модели

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

  •  05-07-2019
  •  | 
  •  

Вопрос

Где в решении / проектах я должен поместить модели для уровня доступа к данным. Например, если у меня есть модуль входа в систему, который должен использовать таблицу Users в базе данных, и у меня есть модель User.cs. Куда пойдет этот файл? Если другие модули должны иметь доступ к этому User.cs для получения информации, я не могу поместить его в модуль. Но тогда я не вижу, как это может оставаться слабосвязанным.

Это было полезно?

Решение

В случае слабой связи вы обычно сохраняете интерфейс для этих объектов в отдельной сборке для всех остальных проектов, на которые можно ссылаться. В моей компании мы называем это «Контракты». сборка, и обычно содержит только интерфейсы или простые типы .

Что касается , где модель должна идти, если вы храните свои интерфейсы в отдельной DLL для всех, вы можете Разместите свою модель там, где вы хотите . Обычно я считаю, что мои контракты WCF или мои типы ORM (например, Linq2Sql и т. Д.) Являются моей моделью, и я храню их везде, где обычно храню такие вещи. «Модель» Я считаю, что немного более плавно ... везде, где чувствует себя хорошо.

Я более жестко отношусь к представлениям и моделям представления, находящимся в пространствах имен, оканчивающихся на " представления " и " ViewModels "

Надеюсь, это поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top