Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么WCF服务功能中需要OperationContract属性?_C#_Wcf_Web Services - Fatal编程技术网

C# 为什么WCF服务功能中需要OperationContract属性?

C# 为什么WCF服务功能中需要OperationContract属性?,c#,wcf,web-services,C#,Wcf,Web Services,为什么WCF服务函数中需要OperationContract属性?OperationContact属性明确声明方法是ServiceContract上的操作 为什么需要它?主要原因是大部分WCF都是选择性加入的,这也没什么不同。WCF不会仅仅因为方法是接口的一部分而假设您希望将该方法作为服务操作公开。由程序员决定(并明确指出)他们想要公开什么。hmm..那么你的意思是,这个属性应该应用于我们想要从服务公开的任何方法?WCF使用“你明确告诉我你想要做什么”的方法,我坚信这是一件好事。你需要明确地告诉

为什么WCF服务函数中需要OperationContract属性?

OperationContact属性明确声明方法是ServiceContract上的操作


为什么需要它?主要原因是大部分WCF都是选择性加入的,这也没什么不同。WCF不会仅仅因为方法是接口的一部分而假设您希望将该方法作为服务操作公开。由程序员决定(并明确指出)他们想要公开什么。

hmm..那么你的意思是,这个属性应该应用于我们想要从服务公开的任何方法?WCF使用“你明确告诉我你想要做什么”的方法,我坚信这是一件好事。你需要明确地告诉WCF你想要公开什么-从而清楚地说明你的意图,这使得其他人更容易理解你的意图。是的。这个定义就是WCF方法。但是从技术上来说,我想知道OperationContract属性的功能是什么类型的功能?OperationContract允许您覆盖影响服务公开方式的默认设置。WCF运行时还使用该属性向使用者公开您的服务(例如WSDL),并将传入消息分派给关联的操作(CLR方法)。在3.5 SP1之后,OperationContract看起来是完全可选的,并且无论是否存在此属性,公共方法都包含在我的服务契约中,这一点我错了吗???