Как службы данных ADO.Net поддерживают POST, отличный от создания?

StackOverflow https://stackoverflow.com/questions/153019

  •  03-07-2019
  •  | 
  •  

Вопрос

Судя по документации, которую я прочитал до сих пор, службы данных ADO.Net позиционируются как способ предоставления CRUD-подобного интерфейса таблицам в базе данных с помощью RESTful.Это отлично подходит для приложений, которые выполняют только эти четыре операции, но как насчет приложений, которые делают больше?

А как насчет таких глаголов, как «Распечатать», «Утвердить», «Отправить», «Копировать», «Передать», «Обработать», «Рассчитать».

Общим подходом в приложениях RESTful является создание новых ресурсов, с которыми можно взаимодействовать для выполнения этих дополнительных запросов.напримерСоздайте ресурс принтера, который можно опубликовать для выполнения операции печати.Однако эти ресурсы не обязательно сопоставляются с таблицами или представлениями в базе данных.

Как службы данных ADO.Net обрабатывают эти ресурсы, которые не сопоставлены с таблицей?В качестве примера предположим, что вы рассчитывали заработную плату и создали конечную точку /PayrollService/PayCalculator.Публикация объекта, содержащего некоторую информацию о сотрудниках и их валовую заработную плату, даст указание ресурсу PayCalculator вернуть сотрудникам льготы и вычеты.

Это было полезно?

Решение

Службы данных могут предоставлять «любой» граф объектов, в котором вы реализуете IQueryable и, при необходимости, IUpdateable.Объекты не обязательно должны каким-либо образом сопоставляться с базой данных.Это должно делать то, что вы ищете.Посмотрите это 15-минутное видео http://channel9.msdn.com/posts/mtaulty/ADONET-Data-Services-VS08-Sp1-B1-Surfacing-Data/

Вы также можете реализовать сервисные операции — методы, если хотите.Хорошо, не так RESTful, но удобно и легко сделать.Посмотрите это 7-минутное видео http://channel9.msdn.com/posts/mtaulty/ADONET-Data-Services-VS08-Sp1-B1-Service-Operations/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top