Dto/TransactionScripts и Odata Services

С сервисом odata мы можем делать запросы со стороны клиента, не используя dto. Действительно ли мне нужен слой dto, если я использую odata svc? Каковы минусы и плюсы, если я не использую dto. В нашей старой системе для механизма запросов есть много сервисных методов запросов, которые возвращают dto collection. Но услуги odata сбивают меня с толку... Кажется, что; ответственность сервера переходит к клиенту. Та же самая путаница продолжается для сценариев транзакций. Меня интересуют ваши мысли.

1 ответ

Когда вы находитесь на стороне сервера - единственное, что имеет значение для oData, это либо модель EDM, либо модели POCO. Поэтому, когда вы генерируете файл EDMX, вы всегда можете рассматривать их как свой бизнес-объект или уровень модели и затем перенаправлять в эти пространства имен. Таким образом, в некотором смысле нет бизнес-логики, которую вы там применяете.

Но на стороне клиента вы всегда можете централизовать вызов метода oData. Поскольку они поддерживают обратные вызовы, вы всегда можете сделать так, чтобы модель представления вызывала хранилище и передавала обратный вызов. Таким образом, вы не будете раздувать свою модель представления с помощью обширного вызова запроса odata. Вроде шаблон репозитрой - это то, о чем я говорю.

Надеюсь, что это дает вам направление.

С уважением:)

Другие вопросы по тегам