Я занимаюсь разработкой приложения MVC, в котором в данный момент у меня есть 3 проекта.
- Core (это должно быть для репозиториев, бизнес-классов, моделей, HttpModules, HttpFilters, настроек и т. Д.)
- Доступ к данным (поставщик данных, например SqlDataProvider для работы с хранилищем данных SQL Server - реализует интерфейсы репозитория, XmlDataProvider - также реализует интерфейсы репозитория, но для локальных файлов XML в качестве хранилища данных)
- Проект ASP.NET MVC (все типичные вещи, пользовательский интерфейс, контроллеры, контент, скрипты, ресурсы и помощники).
У меня нет моделей в моем проекте ASP.NET MVC. Я только что столкнулся с проблемой из-за этого, потому что я хочу использовать новую функцию DataAnnotation в MVC 2 в своем бизнес-классе, которая как и в Core , однако я хочу иметь возможность локализовать сообщения об ошибках. Это где моя проблема начинается. Я не могу использовать свои ресурсы из проекта MVC в Core . Проект MVC ссылается на Core, и наоборот не может быть.
Мои варианты, как я их вижу:
1) Удалите ресурсы, но для этого потребуется исправить целую кучу представлений и контроллеров, где я на них ссылаюсь,
2) Сделать полную реструктуризацию моего приложения
Что вы думаете об этом? Кроме того, я должен просто переместить все, что связано с бизнесом, в папку Models в проекте MVC ?? Имеет ли смысл иметь такую структуру, потому что мы можем просто создавать подпапки для всего в рамках проекта MVC? Вся библиотека Core не предназначена для чего-либо еще, поэтому на самом деле нет смысла компилировать ее в отдельную DLL.
Предложения приветствуются.