直接使用WCF重载方法详解

WCF是由微软开发的一款开发框架,可以帮助我们实现许多功能。其在开发人员眼中具有非常高的重要性。在WCF的契约中是不可以直接使用重载函数的,因为方法名称一样造成WCF无法区分它们。如下面的代码运行时是会出现WCF重载错误的:#t#

 

  1. [ServiceContract]  
  2. public interface IConter  
  3. {  
  4. //Wrong  
  5. [OperationContract]  
  6. int Sum(int A, int B);  
  7. [OperationContract]  
  8. double Sum(double A, double B);  

 

那么如何使WCF重载正确实现呢?为[OperationContract]加上一个Name属性就好了,当然这个name必须是***不重复的:

 

 
 
 
  1. [ServiceContract]  
  2. public interface IConter  
  3. {  
  4. //Right  
  5. [OperationContract(Name="Sum_Int")]  
  6. int Sum(int A, int B);  
  7. [OperationContract(Name="Sum_Double")]  
  8. double Sum(double A, double B);  

 

以上就是WCF重载在实际使用中的正确方法。

THE END