【问题标题】:Bind data to grid view using LINQ with out adding DataClasses使用 LINQ 将数据绑定到网格视图而不添加 DataClasses
【发布时间】:2012-03-10 15:40:52
【问题描述】:

我看到很多文章使用LINQ绑定gridview,但都使用DataClasses。是否可以使用LINQ 将数据绑定到网格视图而不添加DataClasses.. 任何人都可以给我任何示例代码或工作示例

【问题讨论】:

  • DataClasses 是什么意思。请给出更多解释/代码。
  • 为获取sql表的数据上下文而添加的控件
  • 您希望显示的数据来源是什么?数据库、文件、...?

标签: asp.net linq gridview


【解决方案1】:

我想我可能没有抓住重点,但是无论您的数据来源是什么,只要它是某种形式的集合,您都可以使用 Linq to objects 来查询数据。比如:

public partial class WebUserControl1 : System.Web.UI.UserControl
{
    private readonly List<DataItem> _items;

    public WebUserControl1()
    {
        _items = new List<DataItem>
                     {
                         new DataItem {Name = "Fred"},
                         new DataItem {Name = "Dave"},
                         new DataItem {Name = "John"},
                     };
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        // Get data and use Linq to objects
        var filteredData = GetData().Where(i => i.Name.StartsWith("F")).ToList();

        // Bind to data 
        GridView1.DataSource = filteredData;
        GridView1.DataBind();
    }

    private IEnumerable<DataItem> GetData()
    {
        // Get data from your data source
        return _items;
    }
}

public class DataItem
{
    public string Name { get; set; }
}

如果您的数据是数据库,那么一个不错的选择是使用 Linq to SQL(仅限 SQL Server)或 Linq to Entities(不仅仅是 SQL Server),或 Linq to Datasets(如果您真的需要)。

【讨论】:

  • 能否给个使用sql server的示例
猜你喜欢
  • 1970-01-01
  • 2011-02-24
  • 1970-01-01
  • 2014-07-22
  • 2014-09-11
  • 1970-01-01
  • 2011-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多