实体框架 4 - 如何在属性设置器中注入逻辑?
我的 edmx 中有一个从数据库自动生成的属性:描述。然后,我为该实体创建一个“部分类”.cs 文件,并添加一个只读属性:ShortDescription。 ShortDescription 的 getter 只是处理 Description(删除换行符、回车符等)。
如何在 Description 的设置器上引发 ShortDescription 的属性更改通知?
谢谢!
I have a property auto-generated from database in my edmx: Description. I then create a "partial class" .cs file for the entity and add a read-only property: ShortDescription.
ShortDescription's getter simply processes Description (removes line feed, carriage return, etc).
How can I raise property change notification for ShortDescription on the setter of Description?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这将是一个黑客行为,但它是可以做到的。
首先,您需要覆盖
ReportPropertyChanging
和ReportPropertyChanged
。然后检查您的属性名称的参数...在本例中为“描述”。如果发生这种情况,请使用派生属性名称(在本例中为“ShortDescription”)调用ReportPropertyChanging
或ReportPropertyChanged
。对于参数的任何其他值,请调用ReportPropertyChanging/Changed
的基本版本。编辑: 例如:
This is going to be a hack, but it can be done.
First, you need to override
ReportPropertyChanging
andReportPropertyChanged
. Then check the parameter for the name of your property... in this case "Description". If it occurs, callReportPropertyChanging
orReportPropertyChanged
with the derived property name, in this case "ShortDescription". For any other value of the parameter, call the base version ofReportPropertyChanging/Changed
.Edit: For example:
这些方法也是部分的,所以在你的部分类中你可以添加这样的代码
The methods are partial also, so in your partial class you can add code like this