我使用实体框架构建了一个 asp.net 的Web应用程序Web窗体,我找到了两种方法来绑定ListView: 1-通过这样的数据源
void Bind()
{
var search = db.Search.Where(k => k.RequestId == RequestId);
lstSearch.DataSource = search.ToList();
lstSearch.DataBind();
}
2-通过使用选择方法像这样
public IQueryable<Search> BindOrders()
{
var search = db.Search.Where(k => k.RequestId == 12).AsQueryable();
return search;
}
哪一个最好,为什么?
SelectMethod
和许多其他用于将数据绑定到 Web 控件的功能在.NET Framework 4.5
年作为强类型数据绑定引入。这些功能使您可以以干净且可维护的方式处理从 Web 控件创建/删除/修改/筛选的数据。
另一方面DataSource
方法是将数据绑定到 Web 控件的旧方法。
我建议您阅读此博客,其中详细介绍了该主题(ScottGu的(:
ASP.NET vNext 中的新模型绑定支持是 现有的 Web 窗体数据绑定系统。 它借用了概念和 MVC 中模型绑定系统中 ASP.NET 功能(您将看到此内容 在以后的文章中会详细介绍(,并使用以代码为中心的数据访问 范式更简单、更灵活。
另外,请检查使用IQueryable<Object>
的优点:
从用户的角度来看,主要区别在于,当您使用 IQueryable(与正确支持事物的提供商一起(,您 可以节省大量资源。