如何防止web服务从reference.cs中的字段自动生成属性



我遇到了一个问题,一个旧的win表单应用程序中的一些代码正在使用对web服务中的对象的反射来获取字段列表。反射正在调用GetFields()。在web服务中的数据对象中,我定义了如下字段:

public string PropertyAddress1;
public string PropertyAddress2;
public string PropertyCity;
public string PropertyCounty;
public string PropertyState;

在win-forms应用程序中存在的reference.cs的当前版本中,字段看起来是这样的。

public string PropertyAddress1;
public string PropertyAddress2;
public string PropertyCity;
public string PropertyCounty;
public string PropertyState;

同样的权利?

好吧,我进入了web服务的课堂,并添加了另一个字段。然后我进入获胜表格应用程序,右键点击并点击更新网络参考。当重新生成代码时,reference.cs如下所示:

private string propertyAddress1Field;
private string propertyAddress2Field;
private string propertyCityField;
private string propertyCountyField;
private string propertyStateField;
public string PropertyAddress1 {
get {
return this.propertyAddress1Field;
}
set {
this.propertyAddress1Field = value;
}
}
/// <remarks/>
public string PropertyAddress2 {
get {
return this.propertyAddress2Field;
}
set {
this.propertyAddress2Field = value;
}
}
/// <remarks/>
public string PropertyCity {
get {
return this.propertyCityField;
}
set {
this.propertyCityField = value;
}
}
/// <remarks/>
public string PropertyCounty {
get {
return this.propertyCountyField;
}
set {
this.propertyCountyField = value;
}
}
/// <remarks/>
public string PropertyState {
get {
return this.propertyStateField;
}
set {
this.propertyStateField = value;
}
}

这会丢弃现有代码的行为,因为GetFields()不再返回任何内容。我知道我可以将它交换为GetProperties(),但该类已经定义了属性,我不想在结果集中返回这些属性。我希望引用.cs将字段生成为字段,将属性生成为属性,而不是将字段转换为属性。有没有什么方法可以在字段的自动生成引用.cs中放置一些数据注释或其他类型的标志来防止这种行为?

您可以尝试手动更新reference.cs文件,将属性替换为字段。我敢打赌,如果引用还没有以某种方式配置为使用字段而不是属性,那么前面的作者就是这么做的。

相关内容

  • 没有找到相关文章

最新更新