是否可以在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;
}
在客户类中,有一种深层复制方法 . 如何向客户端公开此信息?
2 回答
不,您只能在WCF DataContract中公开属性,而不是方法 .
您几乎可以使用“重用类型”功能执行此操作 . 不幸的是,它只允许重用服务实际使用的类型作为输入或输出参数 . 保存扩展方法的类将是一个静态类,因此不会显示为输入参数或返回类型 .