Недавно я провел рефакторинг своего приложения со следующим: Linq to SQL db connection Объекты для обертывания классов linq to sql Mappers для сопоставления между объектами и объектами Linq to Sql Сервисный уровень для вызова репозитория, передачи объектов в пользовательский интерфейс .
Раньше я просто использовал объекты Linq to SQL в своем пользовательском интерфейсе (я знаю). Но при отображении отношений это было так просто. Например:
У меня есть способ под названием SchoolProfile и таблица под названием School. У пользователя есть SchoolProfile (со средним баллом, рейтингом и т. д.), который ссылается на школу. Добавление функциональности в Школу было простым — потому что у него нет внешних ключей.
При создании формы для пользователя, чтобы перечислить все SchoolProfiles - они не хотят видеть SchoolId. Раньше, на мой взгляд, это было бы просто schoolprofile.School.Name. Теперь ShoolProfile — это «плоский» объект в моих ViewData без свойств. Я думаю, я мог бы создать другие классы, чтобы получить связанные данные (название школы и т. д.), но это выглядит грязно. Какие-либо предложения?