Я столкнулся с проблемой устранения проблем при попытке решить репозиторий и единицу шаблона работы с помощью Entity Framework Model First. В моем решении у меня есть 4 проекта: данные, домен, репозиторий, консоль. В моем слое данных у меня есть EF, edmx-файл. В доменном слое у меня есть мои объекты, на уровне репозитория у меня есть интерфейс репо и класс UOW. На консольном уровне я пытаюсь записать имена на экране. Но чтобы писать имена на экране, мне нужно добавить EF dll в Project Console и написать строку подключения базы данных к app.config. Но это неправильно, я думаю, для разделения проблем. Консольный проект не должен знать об EF, он должен только взаимодействовать с уровнем Repo, чтобы использовать класс Unit of Work (UOW).Разделение проблем, связанных с репозиторием, структурой UoW и структурой Entity
Вот моя структура:
Два проекта использовать EF DLL, который
Мои простые ссылки консольного приложения (это, как я хочу, чтобы это было, только использование слоя репо и верхнего слоя)
Моя консоль код:
Здесь код консоли не работает, если я не добавить EF проекта и строка подключения к проекту. Что я делаю не так? Любое предложение поможет, я смотрю на некоторые GitHub проекты и не смог найти простое решение, которое не имеет строк соединения в app.config
или web.config
Выполняемое приложение всегда предоставляет строку подключения. Для слоя данных это инжектированная зависимость. Если в DAL была строка подключения, вы никогда не сможете использовать ее с другими базами данных. –
Почему я хочу использовать его с другими базами данных? что вы имеете в виду? –
Разработка, тестирование, производство, ... Как бы вы сказали DAL, какую базу данных использовать, когда ваше приложение работает в помещении у клиента? –