Say I have the following method:
private static void SetLastModifiedTimeUser<TEntity>(TEntity entity) where TEntity : class
{
PropertyInfo propertyInfo;
propertyInfo = entity.GetType().GetProperty("LastModifiedUser");
if (propertyInfo != null)
propertyInfo.SetValue(entity, IdentityHelper.UserName, null);
}
As you can see, the method accepts a generic type. Every class passed to this method will contain a property named ‘LastModifiedUser’. Is there a way I can access this property without using reflection? I don’t think there is, but I thought I’d ask.
Yes, if all your entities have
LastModifiedUserproperty, then you can make all entities inherit from base class, or implement some interface likeThen just add this constraint (or make your method non-generic, accepting
IModifyable)And your code will look like: