最近在调试WCF的接口时一直返回“405不允许使用此方法”,这个问题困扰了大半天,网上查了各种办法,但是每个人遇到的问题不同还是不能解决。
最后无意之中发现问题所在,记录一下帮助后面的同学解决问题。
WCF远程方法会配置属性WebGet用来完成UriTemplate的组合从而通过地址栏GET的形式去获取数据,这些道理我们都懂,但是。。一不小心粘贴把原本
[WebGet(UriTemplate = "", ResponseFormat = WebMessageFormat.Json)]
写成了
[WebInvoke(UriTemplate = "", ResponseFormat = WebMessageFormat.Json)]
其实对于WebGet和WebInvoke也很容易理解一个通过地址栏参数去接收参数,一个通过实体序列化的方式提交。
换句话说WebGet属性用来收集客户信息。WebInvoke属性被用于那些修改数据的添加或者删除客户信息的操作。
所以在这里特别标记一下