我在我的实体框架 (v5) 对象上使用部分类 (.NET 4.5)。我为这个分部类添加了一个接口,但是针对这个接口测试EF对象是错误的,但是应该可以识别为该接口是在分部类上定义的。这是我正在尝试的:
public interface Product : ILastModified
{
public DateTime LastModified { get; set; }
}
然后在我的数据层我正在尝试这个:
public virtual int Update<T>(T TObject) where T : class
{
//WHY ALWAYS FALSE?
if (TObject is ILastModified)
{
(TObject as ILastModified).LastModified = DateTime.Now;
}
var entry = dbContext.Entry(TObject);
dbContext.Set<T>().Attach(TObject);
entry.State = EntityState.Modified;
return dbContext.SaveChanges();
}
问题是“如果(TObject 是 ILastModified)”总是错误的,即使我将它设置在部分类上。我做错了什么还是有办法实现这样的目标?