Рекомендую использовать единицу работы с репозиториями и сервисами.Ну, это дает вам разделение проекта.Т.е.
- Уровень доступа к данным (содержит запросы EF LINQ, модели и текстовые данные, unitofwork)
- Уровень обслуживания (логика бизнеса и домена)
- Уровень Wpf(Часть пользовательского интерфейса, которая взаимодействует только с сервисным уровнем)
- Тестовый уровень (для модульного тестирования… и т. Д.)
Преимущество: вы можете легко избежать дублирования кода. (Используйте универсальныйхранилище для крэдов).Вы можете легко изменить базу данных в будущем (изменение всего за один слой). Гораздо больше ...