C# Web服务客户端上“我的对象”中的奇数字段
我有一个目标,比如:C# Web服务客户端上“我的对象”中的奇数字段,c#,wcf,C#,Wcf,我有一个目标,比如: [DataContract] public class Something { [DataMember] public string One { get; set; } [DataMember] public string Two { get; set; } } 我有返回列表的Web服务。如果我调试Web服务上列表元素的值,它们看起来很好 但是,如果我在Web客户机上调试Web服务返回的值,我可以看到所有Something对象都有附加字段OneFi
[DataContract]
public class Something
{
[DataMember]
public string One { get; set; }
[DataMember]
public string Two { get; set; }
}
我有返回列表的Web服务。如果我调试Web服务上列表元素的值,它们看起来很好
但是,如果我在Web客户机上调试Web服务返回的值,我可以看到所有Something对象都有附加字段OneField,该字段的值等于1,而TwoField的值等于2
以下是客户端代码:
ServiceReference.WebServiceClient proxy = new ServiceReference.WebServiceClient();
ServiceReference.Something[] somethings = proxy.GetSomethings();
foreach (ServiceReference.Something something in somethings)
{
// inspect something variable here
}
我只是想知道为什么要增加这些字段?如果我不想让它们出现在客户端,我可以做些什么吗?1和2是属性。私有字段必须存在。这只是工具构建代理类的方式,它为属性创建了支持字段,而不是使用自动属性,因为我认为它在触发事件和其他内容的代理类的访问器中添加了额外的逻辑。它对使用类的任何代码都没有影响,因为它们是私有字段。