donc j'utilise Gridview avec un WCF. J'ai réussi à insérer des boîtes de texte à gridiview, mais maintenant je me bats pour sauver le gridview via le service WCF. Je donne une tentative et d'obtenir cette erreur:Enregistrer De Gridview en utilisant un WCF
"The parametrized query '(@Item1 narchar(4),@Item2 nvarchar(4000)) insert into ' expects the parameter '@item2', which was not supplied."
voici mon code:
public string InsertProcesses(ProcessDetails proDetails)
{
string Message;
SqlConnection con = new SqlConnection(@"Data Source=localhost;Initial Catalog=WCFTest;Integrated Security=True;Pooling=False");
con.Open();
SqlCommand cmd = new SqlCommand("insert into SaveProcesses(Item1, Item2)values(@Item1, @Item2)", con);
cmd.Parameters.AddWithValue("@Item1", proDetails.Item1);
cmd.Parameters.AddWithValue("@Item2", proDetails.Item2);
int result = cmd.ExecuteNonQuery();
if (result == 1)
{
Message = proDetails.Item1+ "Details accepted";
}
else
{
Message = proDetails.Item1+ "Details not accepted";
}
con.Close();
return Message;
}
for (int i = 0; i < dataGridView2.Rows.Count; i++)
{
ServiceReference6.ProcessDetails det2 = new ServiceReference6.ProcessDetails();
det2.Processes = dataGridView2.Rows[i].Cells["Item1"].Value.ToString();
det2.Processes = dataGridView2.Rows[i].Cells["Item2"].Value.ToString();
obj6.InsertProcesses(det2);
Merci pour toute aide qui peut être donné. S'il vous plaît noter que c'est la première fois que je tente une WCF.
Code ProcessDetail
[DataContract]
public class ProcessDetails
{
int id;
string item1;
string item2;
[DataMember]
public int Id
{
get
{
return id;
}
set
{
id = value;
}
}
[DataMember]
public string Item1
{
get
{
return item1;
}
set
{
item1 = value;
}
}
[DataMember]
public string Item2
{
get
{
return item2;
}
set
{
item2 = value;
}
}
}
Est-ce que 'proDetails.Item2' est nul? – Tim
Le point 2 contient des informations. Et dans la base de données aucune d'entre elles sont définies comme null, désolé je suis nouveau à WCF et devient confus – Andrew
Vous avez une erreur SQL, pas une erreur WCF. Ce que vous attendez avec Item2 ne se passe pas. Qu'est-ce que 'det2.Processes'? Quoi qu'il en soit, vous l'écrasez dans votre boucle for lorsque vous lui affectez la cellule "item2". Pouvez-vous poster plus de votre code? – Tim