Как написать собственный ORM на основе XmlService? - PullRequest
2 голосов
/ 12 ноября 2010

Вот проблема. Где-то есть база данных Oracle, но она недоступна для разработчиков / пользователей программного обеспечения. Вместо этого мы можем использовать основанный на XML веб-сервис, который является связующим звеном между программой и базой данных, поэтому он выглядит так:

1) Я хочу получить таблицу. У меня есть WebMethod для этого. Он возвращает простой XML этой таблицы.

2) Я хочу добавить строку в таблицу. У меня есть WebMethod для этого. Он принимает необходимые аргументы и возвращает простой XML-код, подтверждающий, успешно ли выполнена операция.

Так же имеются полные интерфейсы SCUD (выбор, создание, обновление (в моем случае - просто редактирование), удаление) для каждой сущности, хранящейся в БД. Но есть и другие отношения.

Итак, я хочу написать какую-нибудь оболочку для работы с базой данных whol. Представьте, что у вас есть такие столы:

Customers
*Id
 Name

Orders
*Id
 CustomerId
 OrderData

И я хочу выполнить такие запросы как:

var order = MYORM.GetOrders().First(); // first order
var customer = MYORM.GetOrders().First().Customer  // first order's customer

var customers  = MyORM.GetCustomers(); // returns customers list

НО! customers.Contains(customer) должно быть true, даже customers запрашивалось и, следовательно, создавалось после customer.

Более того, все операции create-delete-edit также должны поддерживаться.

Так работает EF, но его механика кажется слишком сложной. Есть идеи как это можно сделать?

1 Ответ

0 голосов
/ 12 ноября 2010

Начиная с SQL Server 2005, вы можете представить базу данных как веб-службу, размещенную на сервере sql.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...