Миграция с DataSets на EntityFramework
В настоящее время я изучаю возможные способы реорганизации нашей базы кода, чтобы с ней было легче работать.
Приложение представляет собой довольно большое приложение Asp.Net Webforms, в котором все настройки / извлечение данных осуществляются через веб-службы. В настоящее время эти веб-службы возвращают наборы данных, содержащие 1 или более таблиц, возвращаемых из хранимых процедур. Кодовая база достаточно тесно связана с выделенным кодом ASP, вызывающим Web Services в нескольких местах, и большая часть бизнес-логики происходит либо внутри выделенного кода, либо в хранимых процедурах.
Некоторое время мы искали возможные способы обновления приложения и модернизации кодовой базы. Мы не можем (и не хотим) переписывать все приложение, но было бы здорово, если бы мы могли постепенно начать его продвигать к новой архитектуре. Я посмотрел на архитектуру MVP, которая, кажется, будет хорошо соответствовать нашей нынешней архитектуре - она не потребует слишком много переписывания, но все равно должна привести к более тестируемому коду (еще одна цель - в настоящее время у нас нет автоматизированных тестирование).
Хотелось бы знать, однако, есть ли у кого-нибудь советы / информация / статьи по переходу с DataSets на EntityFramework. Я чувствую, что это даст нам самое большое преимущество, поскольку позволит моделировать наши данные и тестировать их намного проще. К сожалению, я еще не смог найти что-либо в Интернете относительно этого вида миграции. Наш дизайн базы данных довольно хорош (к счастью), но нам придется некоторое время поработать и с DataSets, и с EntityFramework, пока мы не избавимся от DataSets - мы не сможем сделать все это сразу.
Кто-нибудь может дать совет по этому поводу?
1 ответ
Похоже, вам нужно решить две отдельные проблемы.
- Как вы используете EntityFramework внутри веб-сервисов?
- Во-вторых, как вы передаете эти результаты в и из веб-сервисов.
Для #1 мы можем только догадываться о соответствующих деталях вашей текущей реализации. Тем не менее, это, скорее всего, общее изменение, по которому вы могли бы искать и искать помощь.
Для #2 вы, вероятно, захотите определить серию бизнес-объектов, которые идут туда-сюда. Веб-сервис может переводить между ними и объектами EntityFramework. (Вы можете предположительно передать объекты EF напрямую, но там могут быть проблемы в зависимости от вашего сценария.)