如何控制通用WCF返回类型的名称?

ili*_*rit 8 generics wcf web-services

我有一个WCF Web服务方法,其原型是:

[OperationContract]
Response<List<Customer>> GetCustomers();
Run Code Online (Sandbox Code Playgroud)

当我将服务引用添加到客户端时,Visual Studio(2005)创建了一个名为"ResponseOfArrayOfCustomerrleXg3IC"的类型,它是"Response <List <Customer >>"的包装器.有什么方法可以控制包装器名称吗?ResponseOfArrayOfCustomerrleXg3IC听起来不太吸引人......

Pan*_*nos 18

您可以在DataContract属性中定义自己的名称,如下所示:

[DataContract(Name = "ResponseOf{0}")]
public class Response<T>
Run Code Online (Sandbox Code Playgroud)

请注意,在您的示例中,{0}将替换您的代理引用类型ResponseOfArrayOfCustomer.

更多信息:WCF:序列化和泛型