Val*_*rio 5 entity-framework-4.1 asp.net-mvc-3
我是Entity Framework(和asp.net mvc 3)的新手,这是我第一次使用EF4.1代码时的第一次体验.
我的问题很简单:当我通过模型生成一个新的数据库表我想做
实际上,变量看起来像:
[DisplayName("Data Modifica")]
[DataType(DataType.DateTime)]
[DisplayFormat(DataFormatString = "{0:d}")]
public DateTime DataModifica { get; set; }
Run Code Online (Sandbox Code Playgroud)
我想我可以写一些关于datacontext的"OnModelCreating"事件,但我太新了已经掌握了这个:)
有人可以帮忙吗?
提前谢谢,V.
Lad*_*nka 10
这与模型的创建无关."模型"是类和数据库之间映射的描述.OnModelCreating用于修改映射定义,而不是修改数据.它与实体实例本身的数据无关.
如果您想要自动修改,您可以覆盖SaveChanges:
public override int SaveChanges()
{
DateTime now = DateTime.Now;
foreach (var entity in ChangeTracker.Entries<YourEntityType>()
.Where(e => e.State == EntityState.Added || e.State == EntityState.Modified)
.Select(e => e.Entity))
{
entity.DateModifica = now; // set the date
}
return base.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)