【问题标题】:How to Set variable value as a DataTable name in c#如何在 C# 中将变量值设置为 DataTable 名称
【发布时间】:2017-04-26 05:22:04
【问题描述】:

我想在 c# 中动态地将变量值设置为 DataTable 名称,因为每次运行时变量名称都会改变。 怎么说呢,

String mydatatablename="MyDT1";
 DataTable mydatatablename= new DataTable();

然后我将这个mydatatablename分配给我项目中的一个Gridview。如下图,

 mydatatablename   = ds1.Tables[0];

            GridProduct.DataSource = mydatatablename  ;
            GridProduct.DataBind();

【问题讨论】:

  • 那么您面临的问题是什么?
  • 他用同一个变量做了两件不同的事情。首先,他将字符串“MyDT1”分配给mydatatablename,然后尝试在同一变量中创建new DataTable()
  • 假设ds1是DataSet,你可以通过调用GridProduct.DataSource = ds1.Tables[mydatatablename]从DataSet中获取任何具有tablename = "MyDT1"的表

标签: c# asp.net object datatable


【解决方案1】:

你不能这样做。您可以创建一个Dictionary<string, DataTable> 来存储该数据。

例子:

Dictionary<string, DataTable> mydts = new Dictionary<string, DataTable>();

String dt1 = "mydatatable1";

mydts.Add(dt1, new DataTable());

然后:

control.DataSource = mydts[dt1];

在 C# 中不能有变量的动态名称,但可以有一个对象集合,其中键是名称,可以是变量字符串。

更多关于Dictionary的信息可以在here找到

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 2016-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    相关资源
    最近更新 更多