【问题标题】:Dynamic DataTable Creation in ASP.NETASP.NET 中的动态数据表创建
【发布时间】:2013-09-20 10:42:12
【问题描述】:

我有成员数据库,其中包含角色表中定义的角色。现在我想根据角色表中存在的角色数量动态创建数据表...

这是我的代码..

DataTable dTable = new DataTable();

string[] rolesarr = Roles.GetAllRoles();
int length = rolesarr.Count();

for (int i = 0; i <= length; i++)
{
     string colname = rolesarr[i];
     if (i == 0)
     {
         dTable.Columns.Add(colname, typeof(string));
     }
     else
     {
         dTable.Columns.Add(colname, typeof(bool));
     }
}

但它给出的错误是

“System.IndexOutOfRangeException:索引超出了数组的范围。”

我们将不胜感激任何帮助。 提前谢谢..

【问题讨论】:

    标签: c# asp.net arrays datatable


    【解决方案1】:

    改变你的

    i <= length
    

    i < length
    

    因为数组是从零开始的。它们的界限是0length - 1

    来自Arrays (C# Programming Guide)

    数组索引为零:具有 n 个元素的数组索引从 0n-1

    例如,当您声明一个包含 5 个元素的数组时,例如;

    int[] array = new int[5];
    

    您的元素从04 的索引喜欢;

    array[0]
    array[1]
    array[2]
    array[3]
    array[4]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-15
      • 1970-01-01
      • 2011-10-25
      相关资源
      最近更新 更多