自动增量将无法在表的foreach内部工作

现在我正在尝试向表中添加功能。

这是在cshtml C#MVC ASP.NET环境中完成的。

@{
    dt_Table = ds_Set.Tables[1];
    foreach (System.Data.DataRow dr in dt_Table.Rows)
    {
        int autoincrement = 0;
        string nombre = dr["Nombre"].ToString();



        <tr>
            <td align="center">@(autoincrement++)</td>
            <td align="center">@nombre</td>
        </tr>

    }
}

如何为该值添加自动增量或++? 现在,它只在表的每一行上打印“ 1”:(

我该如何解决?

shmf001 回答:自动增量将无法在表的foreach内部工作

变量autoincrement的作用域为foreach循环块,因此在每次迭代时都会对其进行分配和释放。在foreach循环之外声明变量(或可以使用for循环):

for( var i = 0; i < dt_Table.Rows.Count; ++i )
{
    var dr = dt_Table.Rows[i];
    var nombre = dr["Nombre"].ToString();

    <tr>
        <td align="center">@i</td>
        <td align="center">@nombre</td>
    </tr>
}
,

感谢您的快速解答,简直不敢相信我能解决这个问题

@{
    int autoincrement = 1;
    dt_Table = ds_Set.Tables[1];
    foreach (System.Data.DataRow dr in dt_Table.Rows)
    {

        string nombre = dr["Nombre"].ToString();



        <tr>
            <td align="center">@(autoincrement++)</td>
            <td align="center">@nombre</td>
        </tr>

    }
}
本文链接:https://www.f2er.com/3115115.html

大家都在问