我在'in'中遇到'foreach(col in dt.Columns)'中的错误,表示在foreach语句中都需要Type和Identifier。以下是我的代码。任何帮助都非常感谢。谢谢
dt.TableName = "HL_IMG_TABLE";
DataColumn col = null;
foreach (col in dt.Columns)
{
col.ColumnMapping = System.Data.MappingType.Attribute;
}
答案 0 :(得分:1)
您需要在范围内包含迭代变量,因为来自MSDN
迭代变量对应于只读的局部变量 扩展嵌入语句
的范围
所以,以下应该是您正在寻找的
foreach (DataColumn col in dt.Columns)
{
col.ColumnMapping = System.Data.MappingType.Attribute;
}
答案 1 :(得分:1)
您需要在循环的内部范围中包含变量的数据类型:
foreach (DataColumn col in dt.Columns)
{
col.ColumnMapping = System.Data.MappingType.Attribute;
}
除非您打算在其他地方使用
,否则您不需要在范围之外声明类型DataColumn
的变量
或者如果您愿意,可以使用推断类型
foreach (var col in dt.Columns)
{
col.ColumnMapping = System.Data.MappingType.Attribute;
}
有些人喜欢它,有些人讨厌它:)
答案 2 :(得分:0)
试试这个:
foreach (DataColumn col in dt.Columns)
{
/* do something here*/
}
答案 3 :(得分:0)
您未指定col
的类型。
foreach (DataColumn foreach_col in dt.Columns)
{ //^
foreach_col.ColumnMapping = System.Data.MappingType.Attribute;
}
此DataColumn col = null;
与foreach_col
不同。