我正在使用foreach循环并在该循环内部我声明了datarow
DataSet ds = Business.Site.GetSiteActiveModulesWithStatus(siteId);
foreach (DataRow dr in ds.Tables[0].Rows)
如何在foreach循环外实现此数据行?如何使用for循环而不是foreach循环?
答案 0 :(得分:1)
循环for:
//Change 0 to other numbers to acess other rows
DataRow row = ds.Tables[0].Rows[0];
在for之外,为了访问特定的DataRow,你可以这样做:
<button id="btn6" type="button" class="btn btn-default"><p id="btn6Text">READ MORE ABOUT US<i id="glyph2" class="fa fa-caret-right fa-3x"></i></p></button>
答案 1 :(得分:0)
要访问循环外部的行变量,您必须在外面声明它:
DataRow rowFound = null;
for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
var currentRow = ds.Tables[0].Rows[i];
if(true /*To do: define some matching criteria*/)
{
rowFound = currentRow;
}
}
if(rowFound != null)
{
// We found some matching, what shall we do?
}
但你也可以用LINQish风格编写相同的内容:
var rowFound = ds.Tables[0].AsEnumerable()
.Where(row => true /*To do: define some matching criteria*/)
.FirstOrDefault();
此答案中的所有代码均未经过测试。