我的代码:
DataTable dt = fs.DataTable;
int columnsNumber = dt.Columns.Count;
string[] array = new string[columnsNumber];
for (int k=0; k==columnsNumber; k++)
{
array[k] = dt.Columns[k].ColumnName;
}
foreach (var item in array)
{
MessageBox.Show(item);
}
MessageBox已显示空白消息。
如果我运行此代码,没问题;
array[1] = dt.Columns[1].ColumnName;
array[2] = dt.Columns[2].ColumnName;
array[3] = dt.Columns[3].ColumnName;
这项工作。有什么问题?
答案 0 :(得分:2)
您的cicle只是检查 k == kolonSayisi :
for (int k=0; k==kolonSayisi; k++)
{
array[k] = dt.Columns[k].ColumnName;
}
我认为你应该这样写:
for (int k=0; k < columnsNumber; k++)
{
array[k] = dt.Columns[k].ColumnName;
}
答案 1 :(得分:2)
您已在[{1}} ==
中添加了for loop
运算符,您应该使用<
更改
for (int k=0; k==kolonSayisi; k++)
到
for (int k=0; k<kolonSayisi; k++)
答案 2 :(得分:1)
你也可以这样使用
var listToArray = new listToArray<string>();
foreach (DataColumn dataCol in dt.Columns)
listToArray.Add(dataCol.ColumnName);
listToArray.ToArray();
希望它有所帮助。
答案 3 :(得分:0)
您可以这样使用:
TestClass1
- testmethod1()
- testmethod2()
- testmethod3()
- testmethod4()
TestClass2
- testmethod11()
- testmethod22()
- testmethod33()
- testmethod44()
答案 4 :(得分:0)
for循环的工作方式如下:
在括号中,第一部分定义计数或增量变量并设置起始值。第二部分是取消条件。你可以这样读:如果condition为false则停止循环。第三部分定义了步长,以及如何增加变量。
现在,如果您查看条件k==columnsNumber
,您正试图检查k是否等于该数字。在k为0的第一次迭代中,如果columnsNumber
不为0,则返回false。因此,循环将停止。