Frage

int x;
int iHateDataRows = dt.Rows.Count + 2;
System.Data.DataRow[] dra = new System.Data.DataRow[1000];

for(x = 0; x < iHateDataRows; ++x)

Also, das ist natürlich eine Schleife, aber mein Problem ist, dass der ++x mir sagt, dass es nicht erreichbar ist. Ich weiß nicht, ob dies nur mein IDE ist verrückt oder etwas (ich SharpDevelop verwenden, vor allem, weil VS2008 zu klobig ist und nicht über nette kleine Features, die Ich mag.)

Ich hoffe, dass ich zur Verfügung gestellt genug Informationen für jemanden das Problem zu erraten. Ich habe in dieser Sache sah, änderte sich die Variablen. Alles, wird es nicht von der Stelle.

EDIT:

Dies ist nach dem for-Schleife:

if(dra[x].ItemArray[2].ToString() == "0")
{
    return x.ToString();
}
else
{
    return "Fail";
}

Ich hoffe, dass dieser Code korrekt ist, wie ich es nie zu testen bekam.

War es hilfreich?

Lösung

Sie kehren immer von der Schleife, bevor es auf die nächste Iteration geht. Das heißt, beide Hälften der „if“ Anweisung Rückkehr. Sie gehen nie an die Spitze der Schleife zurück.

Andere Tipps

Sie haben wahrscheinlich ein break oder return (oder, Gott bewahre, goto) innerhalb der Schleife.

Da entweder das eine oder das andere „if“ -Klausel in der Schleife ausgeführt wird, wird eine Rückkehr garantiert auftreten, und die Schleife wird nie eine zweite Iteration ausgeführt werden; somit wird der Zuwachs nicht stattfinden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top