Asp.net:按模型绑定或按数据源绑定列表视图哪个更好?



我使用实体框架构建了一个 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(与正确支持事物的提供商一起(,您 可以节省大量资源。

最新更新