我在 SE 上看过很多与此相关的帖子,但没有一个能令人满意地回答这个问题。如果有帖子确实回答了这个问题(带有实际的代码示例),那么请指出我的方向。
保存对象时,我需要将信息写入日志。我需要知道原始值和新值。这对于父对象来说非常容易,甚至可以很容易地在任何更改的子对象上获取新值。挑战在于获取子对象的原始值。
例如,用户通过下拉列表更改子对象。这会更改父级外键的值。保存时,我需要在日志中写入更改实体的文本描述(ToString() 值或其他值),而不是外键的值。
ObjectStateEntry 包含父对象的当前值和原始值,但是如何获取更改后的子对象的当前值和原始值?
看起来这应该是可能的,但要么太难完成,要么被微软设计团队忽视了。
提前感谢您的帮助。