Hej, ciągle pojawia się błąd:
Indeks (liczony od zera) musi być większy lub równy zero i mniejszy niż rozmiar listy argumentów.
Mój kod:
OdbcCommand cmd = new OdbcCommand("SELECT FirstName, SecondName, Aboutme FROM User WHERE UserID=1", cn);
OdbcDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Name.Text = String.Format("{0} {1}", reader.GetString(0), reader.GetString(1));
Aboutme.Text = String.Format("{2}", reader.GetString(0));
}
Aboutme.Text =
.Odpowiedzi:
Twoje drugie
String.Format
używa{2}
jako symbolu zastępczego, ale przekazujesz tylko jeden argument, więc powinieneś użyć{0}
zamiast tego.Zmień to:
Do tego:
źródło
W tej linii:
Token {2} jest nieprawidłowy, ponieważ masz tylko jeden przedmiot w parmach. Użyj tego zamiast tego:
źródło
Zmień tę linię:
źródło
Może się to również zdarzyć, gdy próbujesz rzucić miejsce, w
ArgumentException
którym nieumyślnie wywołaszArgumentException
przeciążenie konstruktoraźródło
Ciąg.Format musi zaczynać się od zerowego indeksu „{0}” w następujący sposób:
źródło
źródło
Zmień tę linię:
2 powinno być 0. Każda liczba zaczyna się od 0.
źródło
W moim przypadku nie widziałem błędu „+ imię” . W tym przypadku kompilator nie zgłosi błędu. Więc uważaj.
źródło