C# 如何访问;属性";EF对象上下文CurrentObjectContext_SavingChanges方法中的值

C# 如何访问;属性";EF对象上下文CurrentObjectContext_SavingChanges方法中的值,c#,entity-framework,C#,Entity Framework,我想使用自定义开发的“Auditable”属性来跟踪我的“POCO”对象。必须跟踪具有可审计属性的对象的CRUD操作。为此,我重写了对象上下文的savingchanges方法。但我不确定如何在保存方法中访问每个实体对象的属性值(属性是否存在)。感谢您的帮助 我正在使用EF6.0 using System.ComponentModel.DataAnnotations; using System.ComponentModel; using Nido.Common.Utilities.Attribut

我想使用自定义开发的“Auditable”属性来跟踪我的“POCO”对象。必须跟踪具有可审计属性的对象的CRUD操作。为此,我重写了对象上下文的savingchanges方法。但我不确定如何在保存方法中访问每个实体对象的属性值(属性是否存在)。感谢您的帮助

我正在使用EF6.0

using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using Nido.Common.Utilities.Attributes;

namespace DemoTest.Bll.Models
{
    /// <summary>
    /// Created by MAS IT
    /// </summary>
    [Auditable]
    public class Address : BaseObject
    {
       // Your code here
    }
}

取决于属性类实际上是
AuditableAttribute
还是仅仅是
Auditable

您需要使用System.Linq,然后可以执行以下任一操作:

if (sender !=null && 
    sender.GetType().GetCustomAttributes().OfType<AuditableAttribute>().Any())
if(发送方!=null&&
sender.GetType().GetCustomAttributes().OfType().Any())

if(发送方!=null&&
sender.GetType().GetCustomAttributes().OfType().Any())
if (sender !=null && 
    sender.GetType().GetCustomAttributes().OfType<AuditableAttribute>().Any())
if (sender !=null && 
    sender.GetType().GetCustomAttributes().OfType<Auditable>().Any())