【问题标题】:How to do CRUD on datagridview with an anonymous type datasource如何使用匿名类型数据源对 datagridview 进行 CRUD
【发布时间】:2014-09-23 12:17:29
【问题描述】:

我有一个数据网格视图。我使用 linq 从数据库中获取数据到实体,并将从 linq 返回的列表分配给 datagridview 的数据源属性。

private void ucRecipe_Load(object sender, EventArgs e)
{
      var v2 = (from malzeme in bshEntity.Malzemeler select new { malzeme.ID, malzeme.Kod, malzeme.Ad, malzeme.Tip}).ToList();
      dgvMaterial.DataSource = v2;
}

我想对分配给 dgvMaterial.Datasource 的列表执行一些 CRUD 操作,然后刷新 dgvMaterial。但我无法从其他方法(如按钮单击事件)到达列表(v2)。我怎样才能从其他方法访问该匿名类型?

【问题讨论】:

    标签: c# linq datagridview entity crud


    【解决方案1】:

    您没有指定您使用的是哪个版本的 C#,所以我使用动态给您一个答案。

    我将匿名类型转换为动态类型,遍历每一行,然后访问属性值等字段值。这是假设您知道匿名类型中的属性名称。

    this.dgvMaterial.ItemsSource = v2.ToList();
    
    for (int i = 0; i < dgvMaterial.Items.Count; i++)
    {
        var row = dgvMaterial.Items[i] as dynamic;
        var fieldOne = row.FieldOne;
        var fieldTwo = row.FieldTwo;
    }
    

    我希望这对你有用。

    【讨论】:

      猜你喜欢
      • 2021-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-18
      • 1970-01-01
      • 1970-01-01
      • 2016-12-05
      • 2023-04-11
      相关资源
      最近更新 更多