Я сейчас создаю фреймворк, который использует базу данных MySQL
.Я не могу использовать MySQL
реализацию структуры сущностей, поэтому я пытаюсь найти лучший способ обобщения функций поиска и подкачки.
Самое простое решение - использовать методы репозитория с сигнатурами.такие как:
IList<Blah> GetSomething(string _query,
int _page,
int _pageSize,
out int _numPages)
, но это кажется немного анти-OOD.
У меня была идея создать служебную библиотеку dll с ISearchParameter
и IPaging
объектом, который одновременноУровень домена и уровень хранилища могут быть доступны, это позволит избежать необходимости воссоздавать эти два интерфейса и их имплиментацию в каждом домене и хранилище.если бы оба уровня ссылались на эту утилиту .dll, было бы плохим проектом передавать объекты ISearchParameter между этими двумя уровнями без сопоставления?Если так, есть ли лучшие решения?