Hey je continue à avoir une erreur:
L'index (basé sur zéro) doit être supérieur ou égal à zéro et inférieur à la taille de la liste d'arguments.
Mon code:
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));
}
Votre deuxième String.Format
utilise {2}
comme espace réservé, mais vous ne transmettez qu'un seul argument. Vous devez donc utiliser {0}
à la place.
Change ça:
String.Format("{2}", reader.GetString(0));
Pour ça:
String.Format("{0}", reader.GetString(2));
Dans cette ligne:
Aboutme.Text = String.Format("{2}", reader.GetString(0));
Le jeton {2} n'est pas valide car vous ne disposez que d'un seul élément dans les paramètres. Utilisez ceci à la place:
Aboutme.Text = String.Format("{0}", reader.GetString(0));
Changer cette ligne:
Aboutme.Text = String.Format("{0}", reader.GetString(0));
Cela peut également se produire lorsque vous essayez de lancer une ArgumentException
et que vous appelez par inadvertance la surcharge ArgumentException
du constructeur.
public static void Dostuff(Foo bar)
{
// this works
throw new ArgumentException(String.Format("Could not find {0}", bar.SomeStringProperty));
//this gives the error
throw new ArgumentException(String.Format("Could not find {0}"), bar.SomeStringProperty);
}
String.Format doit commencer par un index nul "{0}" comme ceci:
Aboutme.Text = String.Format("{0}", reader.GetString(0));
using System;
namespace ConsoleApp1
{
class Program
{
static void Main()
{
Console.WriteLine("Enter Your FirstName ");
String FirstName = Console.ReadLine();
Console.WriteLine("Enter Your LastName ");
String LastName = Console.ReadLine();
Console.ReadLine();
Console.WriteLine("Hello {0}, {1} " + FirstName, LastName);
Console.ReadLine();
}
}
}