Вопрос по wcf, .net – WCF WebGetAttribute vs WebInvokeAttribute

9

Является ли WebGetAttribute просто синтаксическим сахаром для WebInvokeAttribute с Method = & quot; GET & quot ;? Или есть принципиальная разница?

Ваш Ответ

2   ответа
0

Ну, есть разница в обработке запроса. Как правило, использоватьWebGet заGET, См мойответ для деталей.

8

Ваше непосредственное наблюдение, что WebGet и WebInvoke очень похожи, не слишком далеко от истины. WebGet, как вы уже сказали, применяется к глаголу HTTP GET, а WebInvoke может использоваться для применения ко всем остальным глаголам (PUT, POST, DELETE и т. Д.).

Многие параметры в WebInvoke совпадают с параметрами в WebGet. BodyStyle, RequestFormat, ResponseFormat и UriTemplate присутствуют как для WebGet, так и для WebInvoke. Одним из отличий является наличие «метода»; параметр для WebInvoke. Параметр Method указывает HTTP-глагол, соответствующий операции, при этом POST является значением по умолчанию.

У меня не было возможности использовать Reflector, чтобы заглянуть под капот для WebGet и WebInvoke, но я подозреваю, что они очень похожи, даже если кажется, что они разделяют System.Attribute как общую линию.

Похожие вопросы