编译错误
描述:编译资源期间发生错误 需要为此请求提供服务。请查看以下具体内容 错误详细信息并适当修改源代码。
编译器错误消息:CS0165:使用未分配的局部变量 '用户名'
c#代码:
SqlCommand NewUser = new SqlCommand("INSERT INTO [DeleteUser] Values (@username,@password,@name,@lastname,@location,@profesion,@email,@gender,@money,@pro,@xp,@lv,@m1,@m2,@m3,@m4,@m5,@d1,@d2,@d3,@d4,@d5);", c);
NewUser.Connection = c;
NewUser.Parameters.AddWithValue("@username", Username);
NewUser.Parameters.AddWithValue("@password", Pasword);
NewUser.Parameters.AddWithValue("@name", FName);
NewUser.Parameters.AddWithValue("@lastname", LName);
NewUser.Parameters.AddWithValue("@location", Location);
NewUser.Parameters.AddWithValue("@profesion", Profesion);
NewUser.Parameters.AddWithValue("@email", email);
NewUser.Parameters.AddWithValue("@gender", gender);
NewUser.Parameters.AddWithValue("@money", money);
NewUser.Parameters.AddWithValue("@pro", property);
NewUser.Parameters.AddWithValue("@xp", xp);
NewUser.Parameters.AddWithValue("@lv", level);
NewUser.Parameters.AddWithValue("@m1", mission1);
NewUser.Parameters.AddWithValue("@m2", mission2);
NewUser.Parameters.AddWithValue("@m3", mission3);
NewUser.Parameters.AddWithValue("@m4", mission4);
NewUser.Parameters.AddWithValue("@m5", mission5);
NewUser.Parameters.AddWithValue("@d1", did1);
NewUser.Parameters.AddWithValue("@d2", did2);
NewUser.Parameters.AddWithValue("@d3", did3);
NewUser.Parameters.AddWithValue("@d4", did4);
NewUser.Parameters.AddWithValue("@d5", did5);
c.Open();
NewUser.ExecuteNonQuery();
c.Close();
答案 0 :(得分:0)
用户名可能为空
SetDescriptorHeaps
答案 1 :(得分:0)
编译器错误消息:CS0165:使用未分配的本地变量“用户名”
当您在方法中声明用户名时,此错误会为您提供。您需要先为其分配一个默认值,然后指定您想要的实际值
演示:
public void InsertMethod()
{
string Username;
//string Username=""; it should be like this
MessageBox.Show(Username);// this will give you error of "unassigned local variable"
}
P.S。 最好使用
NewUser.Parameters.Add("@parameterName",SqlDbType.VarChar).Value = "somevalue"
比使用它:
NewUser.Parameters.AddWithValue("@username", Username);
这个会给你错误,尤其是涉及日期,时间和批量插入/更新时。