Tôi đang viết một dịch vụ web có nhiều phương pháp. Tất cả đều được thiết lập tương tự như sau:Làm cách nào để đặt RequestFormat mặc định cho WCF ServiceContract?
[OperationContract]
[WebInvoke(
BodyStyle = WebMessageBodyStyle.Bare,
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "x/y/z")]
void someMethod(int x, int y, int z);
Những gì tôi muốn làm là chỉ cần thiết lập mặc định BodyStyle
/RequestFormat
/ResponseFormat
tất cả trong file web.config. Bây giờ, tôi biết tôi có thể làm điều này:
<endpointBehaviors>
<behavior name="webHttpBehavior">
<webHttp defaultBodyStyle="Bare" defaultOutgoingResponseFormat="Json" />
</behavior>
</endpointBehaviors>
Nhưng dường như không có thuộc tính cho RequestFormat. Làm cách nào tôi có thể đặt mặc định RequestFormat
thành JSON?
Cảm ơn để làm rõ! Vì vậy, miễn là cơ thể chỉ định "ứng dụng/json" định dạng, WCF sẽ tự động nhặt nó lên, chính xác? –
Một mẩu tin thú vị tôi tìm thấy từ liên kết của bạn: "Nếu không có định dạng mặc định nào được chỉ định trên thao tác, giá trị của thuộc tính DefaultOutgoingResponseFormat được sử dụng." Về cơ bản, nếu người đăng không chỉ định loại nội dung và không có RequestFormat trong hoạt động, nó sẽ thực sự nhận định dạng từ defaultOutgoingResponseFormat. Hấp dẫn. –