我在 SilverLight 项目中使用Fody来自动生成属性依赖项。RaisePropertyChanged
但是,如果 setter 已经包含方法调用,则它不起作用。
一种解决方法可能是生成 Web 服务参考代码INotifyPropertyChanged
,而不是在部分方法中实现它。
如何在没有 的情况下生成 Web 服务参考代码INotifyPropertyChanged
?
我有一个 WCF 服务,我们称之为 MaterialService.svc。它看起来像这样:
[ServiceContract]
public interface IMaterialService
{
[OperationContract]
Material GetMaterial(int id);
}
[DataContract]
public class Material
{
[DataMember]
public int ID { get; set; }
[DataMember]
public string Name { get; set; }
}
当我将服务添加为服务引用并生成客户端代码时,每个类都设置为实现INotifyPropertyChanged
:
public partial class Material : object, System.ComponentModel.INotifyPropertyChanged {
private int IDField;
private string NameField;
[System.Runtime.Serialization.DataMemberAttribute()]
public int ID {
get {
return this.IDField;
}
set {
if ((this.IDField.Equals(value) != true)) {
this.IDField = value;
this.RaisePropertyChanged("ID");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute()]
public System.Nullable<string> Name {
get {
return this.NameField;
}
set {
if ((this.NameField.Equals(value) != true)) {
this.NameField = value;
this.RaisePropertyChanged("Name");
}
}
}
}
如何生成未实现的客户端代码INotifyPropertyChanged
?