WebGetAttribute 只是 Method = "GET"的 WebInvokeAttribute 的语法糖吗? 或者有根本的区别吗?
最佳答案
您立即发现 WebGet 和 WebInvoke 非常相似,这与事实相差不远。正如您已经说过的,WebGet 适用于 HTTP GET 动词,而 WebInvoke 可用于适用于所有其他动词(PUT、POST、DELETE 等)。
WebInvoke 中的许多参数都反射(reflect)了 WebGet 中的参数。 BodyStyle、RequestFormat、ResponseFormat 和 UriTemplate 都适用于 WebGet 和 WebInvoke。一个区别是 WebInvoke 的“Method”参数的存在。 Method 参数指定与操作对应的 HTTP 谓词,默认值为 POST。
我还没有机会使用 Reflector 来深入了解 WebGet 和 WebInvoke,但我怀疑它们非常相似,尽管它们似乎只是共享 System.Attribute 作为共同的血统。
关于.net - WCF WebGetAttribute 与 WebInvokeAttribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1072556/