【发布时间】:2014-04-22 01:23:53
【问题描述】:
我在代码中遇到了几个错误。这些错误是:
- 错误 17 当前上下文中不存在名称“CommandType”
- 错误 18 当前上下文中不存在名称“SqlDbType”
- 错误 35 当前上下文中不存在名称“txtCity”
如果您能帮助我理解错误并告诉我如何修复它,我想知道。
protected void btnSave_Click(object sender, EventArgs e)
{
// create connectionstring and insert statment
string connectionString = ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString;
string insertSql = " INSERT INTO UserInfo (UID, FN, LN, Password, RePass, Email, Country,State, City)" +
" values (@UsrNme, @fnbox, @lnamebox, @passtxtbx1, @passtxtbx2, @emailbox, @DrDncoundrlst, @DropDownListSwestate, @citytxtbox)";
// create SQL Connection
SqlConnection con = new SqlConnection(connectionString);
// create sql command and parameters
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.text;
cmd.CommandText = insertSql;
SqlParameter UID = new SqlParameter("@UsrNme", SqlDbType.nvarchar, 50);
UID.Value = txtUID.text.tostring();
cmd.Parameters.Add(UID);
SqlParameter FN = new SqlParameter("@fnbox", SqlDbType.varchar,25);
cmd.Connection = con;
FN.Value = txtfn.text.ToString();
cmd.Parameters.Add(FN);
SqlParameter LN = new SqlParameter("@lnamebox", SqlDbType.varchar, 25);
cmd.Connection = con;
LN.Value = txtLN.text.ToString();
cmd.Parameters.Add(LN);
SqlParameter Password = new SqlParameter("@passtxtbx1", SqlDbType.varchar, 25);
cmd.Connection = con;
Password.Value = txtPassword.text.ToString();
cmd.Parameters.Add(Password);
SqlParameter RePass = new SqlParameter("@passtxtbx2", SqlDbType.varchar, 25);
cmd.Connection = con;
RePass.Value = txtRePass.text.ToString();
cmd.Parameters.Add(RePass);
SqlParameter Email = new SqlParameter("@emailbox", SqlDbType.varchar, 25);
cmd.Connection = con;
Email.Value = txtEmail.text.ToString();
cmd.Parameters.Add(Email);
SqlParameter Country = new SqlParameter("@DrDncoundrlst", SqlDbType.varchar, 25);
cmd.Connection = con;
Country.Value = txtCountry.text.ToString();
cmd.Parameters.Add(Country);
SqlParameter State = new SqlParameter("@DropDownListSwestate", SqlDbType.varchar, 25);
cmd.Connection = con;
State.Value = txtState.text.ToString();
cmd.Parameters.Add(State);
SqlParameter City = new SqlParameter("@citytxtbox", SqlDbType.varchar, 25);
cmd.Connection = con;
City.Value = txtCity.text.ToString();
cmd.Parameters.Add(City);
try
{
con.Open();
cmd.ExecuteNonQuery();
lblmsg.Text = "You already complete your registration process";
}
catch (SqlException ex)
{
string errorMessage = "error in registration user";
errorMessage += ex.Message;
throw new Exception(errorMessage);
}
finally
{
con.Close();
}
}
【问题讨论】:
-
您是否已将
using System.Data.SqlClient添加到您的类导入中? -
不,事实上你能告诉我我必须在哪里以及如何放置,因为我还是初学者
-
在 .cs 文件的顶部,应该有一个包含几行
using System....行的块。在该部分输入:using System.Data.SqlClient;这将使您能够访问您正在使用的类型。在开始将代码复制/粘贴到应用程序中之前,您可能应该回到绝对基础。如果您不知道如何导入命名空间,那么您的其余代码也可能超出您的想象。我敢肯定,如果这是一段剪切/粘贴的代码,即使在using之后您也会遇到错误。 -
感谢您的支持,我之前已经声明过,但它是一样的,我必须回到绝对基础,但我尝试过,但我找不到一个好的资源来开始它。无论如何,非常感谢你。
-
@Simo
using指令和引用/使用来自程序集以外的类型绝对是“基础”主题,请查看 msdn.microsoft.com/en-us/library/ez524kew.aspx 和 msdn.microsoft.com/en-us/library/sf0df423.aspx
标签: c# asp.net registration