Wcf WebInvoke 与WebGet 的区别!
WebInvoke与 WebGet 作用都是为了把当前服务给暴露出去,允许客户端直接调用此服务, WebInvoke 更适用于对数据进行操作(数据录入,数据修改,数据删除),WebGet 的定义提交方式类似 "Get" 所以更适用于数据查询(数据呈现),
using
System.ServiceModel;
using
System.ServiceModel.Web
;共同的引用。他们属性是一样的
BodyStyle 获取和设置传入与传出服务操作的消息的正文样式。
IsBodyStyleSetExplicitly 获取 IsBodyStyleSetExplicitly 属性
IsRequestFormatSetExplicitly 获取 IsRequestFormatSetExplicitly 属性。
IsResponseFormatSetExplicitly 获取 IsResponseFormatSetExplicitly 属性。
Method 获取和设置服务操作响应的协议(如 HTTP)方法。
RequestFormat 获取和设置 RequestFormat 属性。
ResponseFormat 获取和设置 ResponseFormat 属性。
TypeId 在派生类中实现时,获取此 Attribute 的唯一标识符。(继承自 Attribute。)
UriTemplate 用于服务操作的统一资源标识符 (URI) 模板。
加上这两个我认为就是 REST 和Wcf 就有点远了,但都同是 Service
代码:
[OperationContract]
[WebGet(UriTemplate =
"/Action/{id}"
)] //可以直接根据具体的参数
id
进行访问
public
string Get (
int
id)
{
String str="
Hellow Word
";
str+=id;
return
str;
}
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "UpdateBasicData", BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Json)]
int UpdateBasicData(SysBasicData model);
[WebInvoke(Method = "POST", UriTemplate = "UpdateBasicData", BodyStyle = WebMessageBodyStyle.WrappedRequest, ResponseFormat = WebMessageFormat.Json)]
int UpdateBasicData(SysBasicData model);
刚刚学习,请各位大神指点!
名称 | 说明 | |
---|---|---|
BodyStyle |
获取和设置传入与传出服务操作的消息的正文样式。 |
|
IsBodyStyleSetExplicitly |
获取 IsBodyStyleSetExplicitly 属性。 |
|
IsRequestFormatSetExplicitly |
获取 IsRequestFormatSetExplicitly 属性。 |
|
IsResponseFormatSetExplicitly | ||
Method |
获取和设置服务操作响应的协议(如 HTTP)方法。 |
|
RequestFormat |
获取和设置 RequestFormat 属性。 |
|
ResponseFormat |
获取和设置 ResponseFormat 属性。 |
|
TypeId | ||
UriTemplate |
用于服务操作的统一资源标识符 (URI) 模板。 |
不要在自己迷茫的时候不学习