是否可以在WCF中的数据协定对象上公开扩展方法?
以下是一个例子:
[DataContract]
public class Customer
{
[DataMember]
public int ID { get; set; }
[DataMember]
public string FirstName { get; set; }
[DataMember]
public Product CurrentProduct { get; set; }
public Customer DeepCopy()
{
//Do Something else. For example just return a new instance
return new Customer();
}
}
[DataContract]
public class Product
{
[DataMember]
public int ID;
[DataMember]
public int Name;
}
在客户类中有一个深层复制方法。我如何向客户公开这个?
答案 0 :(得分:2)
不,您只能在WCF DataContract中公开属性,而不是方法。
答案 1 :(得分:1)
您几乎可以使用“重用类型”功能执行此操作。不幸的是,它只允许重用服务实际使用的类型作为输入或输出参数。保存扩展方法的类将是一个静态类,因此不会显示为输入参数或返回类型。