如何将EF Code First DbContext绑定到Asp.Net DataSource?

我创建了以下Context以与Entity Framework Code First一起使用

 public class Context : DbContext { public DbSet Animals { get; set; } } 

现在我想在Asp.Net应用程序中使用此Context来使用GridView执行CRUD操作。 我需要创建一个DataSource来进行数据绑定。 我该怎么办?

ASP部分看起来像这样:

       

您可以使用EntityDataSource作为GridView源代码并实现ContextCreating事件的处理程序:

 protected void DataSource_ContextCreating(object sender, EntityDataSourceContextCreatingEventArgs e) { var context = new Context(); e.Context = ((IObjectContextAdapter)context).ObjectContext; } 

然后,您只需在页面中配置数据源。 EntitySetName应该与在上下文中公开的DbSet属性名称相同。

另一种方法是使用ObjectDataSource ,它将在GridViewDbSet之间建立桥梁,但这可能更复杂,特别是如果你想要双重数据绑定。