C# 属性默认值的定义未通过web服务序列化
鉴于这一目标:C# 属性默认值的定义未通过web服务序列化,c#,.net,web-services,C#,.net,Web Services,鉴于这一目标: public class Data { public string Description { get; set; } = string.Empty; } 当我将此数据类型作为web服务参数包含在asmx中时,在服务客户端中创建的代理类没有此默认值定义,因此我必须将值显式设置为string属性 代理类如下所示: private string descriptionField; /// <remarks/> public string Descript
public class Data
{
public string Description { get; set; } = string.Empty;
}
当我将此数据类型作为web服务参数包含在asmx
中时,在服务客户端中创建的代理类没有此默认值定义,因此我必须将值显式设置为string
属性
代理类如下所示:
private string descriptionField;
/// <remarks/>
public string Description{
get {
return this.descriptionField;
}
set {
this.descriptionField= value;
}
}
私有字符串描述符字段;
///
公共字符串描述{
得到{
返回此.descriptionField;
}
设置{
此.descriptionField=值;
}
}
如何确保属性在代理类中具有默认值?如何使用字段初始值设定项?您没有定义任何默认值,只是为属性指定了一些值。默认值是使用适当的attributes@PanagiotisKanavos这难道不是sintax
{get;set;}=string.Empty
的意思:“调用构造函数时,自动将string.Empty设置为Description”是的,但这与默认值有什么关系?默认值在服务的XSD文件中定义,该文件由框架基于属性生成。XSD和WSDL是服务契约,而不是一种或另一种语言中基于它的实现