ASP.NET 中的动态数据表创建

本文关键字:数据表 创建 动态 NET ASP | 更新日期: 2023-09-27 18:32:03

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

这是我的代码..

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: Index 在数组边界之外。

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

ASP.NET 中的动态数据表创建

更改您的

i <= length

i < length

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

Arrays (C# Programming Guide)

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

例如

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

int[] array = new int[5];

您的元素从0索引到4类似;

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