Entity framework 实体框架4-如何在属性设置器中注入逻辑?
我在edmx:Description中有一个从数据库自动生成的属性。然后,我为实体创建一个分部class.cs文件,并添加一个只读属性:ShortDescription。 ShortDescription的getter只处理描述、换行、回车等 如何在Description setter上为ShortDescription发出属性更改通知Entity framework 实体框架4-如何在属性设置器中注入逻辑?,entity-framework,propertychanged,change-notification,Entity Framework,Propertychanged,Change Notification,我在edmx:Description中有一个从数据库自动生成的属性。然后,我为实体创建一个分部class.cs文件,并添加一个只读属性:ShortDescription。 ShortDescription的getter只处理描述、换行、回车等 如何在Description setter上为ShortDescription发出属性更改通知 谢谢 这将是一次黑客攻击,但它是可以做到的 首先,您需要覆盖和。然后检查属性名称的参数。。。在本例中,请参见描述。如果出现这种情况,请使用派生属性名调用Repo
谢谢 这将是一次黑客攻击,但它是可以做到的 首先,您需要覆盖和。然后检查属性名称的参数。。。在本例中,请参见描述。如果出现这种情况,请使用派生属性名调用ReportPropertyChanged或ReportPropertyChanged,在本例中为ShortDescription。对于参数的任何其他值,请调用ReportPropertyChanged/Changed的基本版本 编辑:例如:
protected override void OnPropertyChanging(string property)
{
if (property == "Description")
{
base.OnPropertyChanging("ShortDescription");
}
base.OnPropertyChanging(property);
}
protected override void OnPropertyChanged(string property)
{
if (property == "Description")
{
base.OnPropertyChanged("ShortDescription");
}
base.OnPropertyChanged(property);
}
这将是一个黑客,但它是可以做到的 首先,您需要覆盖和。然后检查属性名称的参数。。。在本例中,请参见描述。如果出现这种情况,请使用派生属性名调用ReportPropertyChanged或ReportPropertyChanged,在本例中为ShortDescription。对于参数的任何其他值,请调用ReportPropertyChanged/Changed的基本版本 编辑:例如:
protected override void OnPropertyChanging(string property)
{
if (property == "Description")
{
base.OnPropertyChanging("ShortDescription");
}
base.OnPropertyChanging(property);
}
protected override void OnPropertyChanged(string property)
{
if (property == "Description")
{
base.OnPropertyChanged("ShortDescription");
}
base.OnPropertyChanged(property);
}
这些方法也是分部的,所以在分部类中可以添加如下代码
partial void OnDescriptionChanged()
{
OnPropertyChanged("ShortDescription");
}
这些方法也是分部的,所以在分部类中可以添加如下代码
partial void OnDescriptionChanged()
{
OnPropertyChanged("ShortDescription");
}
好吧,我应该得到任何反对票。。。由于某些原因,MS密封了ReportPropertyChange/Changed,但保留了打开PropertyChange/Changed的状态。使用代码示例,而不是散文示例。谢谢!我忘了看非部分事件!:好吧,我应该得到任何反对票。。。由于某些原因,MS密封了ReportPropertyChange/Changed,但保留了打开PropertyChange/Changed的状态。使用代码示例,而不是散文示例。谢谢!我忘了看非部分事件!: