日期:2014-05-18  浏览次数:20832 次

初学 编译错误 请问这个函数有什么问题 怎样修改?
编译错误 
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 

编译器错误信息: CS0161: “Default2.userNameValidate()”: 并非所有的代码路径都返回值

源错误:

 

行 25: ///验证用户是否存在
行 26: ///</summary>
行 27: private int userNameValidate()
行 28: {
行 29: SqlConnection conn=new SqlConnection(ConfigurationManager.AppSettings["DBConnectionString"]);
 

源文件: e:\My Documents\Visual Studio 2005\WebSites\WebSite1\Register.aspx.cs 行: 27 
C# code
private int userNameValidate()
{
SqlConnection conn=new SqlConnection(ConfigurationManager.AppSettings["DBConnectionString"]);
SqlCommand SelectCmd =new SqlCommand("select * from Users where  userId='"+txtName.Text.Trim()+"'",conn);
int i=0;
try{
conn.Open();
SqlDataReader sdr = SelectCmd.ExecuteReader();
if (sdr.Read())
{
i=1;
lblMessage.Text="此用户已存在,请输入其他用户名";
}
else{
lblMessage.Text="此用户名是可用的!";
}
}
catch(System.Exception ee){
Response.Write("<script language=javascript>alert('"+ee.Message.ToString()+"')</script>");

}
finally{
conn.Close();
}
}


------解决方案--------------------
最下面加个
return i;
------解决方案--------------------
private int userNameValidate()
{
SqlConnection conn=new SqlConnection(ConfigurationManager.AppSettings["DBConnectionString"]);
SqlCommand SelectCmd =new SqlCommand("select * from Users where userId='"+txtName.Text.Trim()+"'",conn);
int i=0;
try{
conn.Open();
SqlDataReader sdr = SelectCmd.ExecuteReader();
if (sdr.Read())
{
i=1;
lblMessage.Text="此用户已存在,请输入其他用户名";
}
else{
lblMessage.Text="此用户名是可用的!";
}
}
catch(System.Exception ee){
Response.Write("<script language=javascript>alert('"+ee.Message.ToString()+"')</script>");

}
finally{
conn.Close();
}
return i;
}
------解决方案--------------------
已经很明确的错误了, 你的函数是 int型的,你怎么不返回结果呢

最后加上 return i;
------解决方案--------------------
private int userNameValidate()
{
SqlConnection conn=new SqlConnection(ConfigurationManager.AppSettings["DBConnectionString"]);
SqlCommand SelectCmd =new SqlCommand("select * from Users where userId='"+txtName.Text.Trim()+"'",conn);
int i=0;
try{
conn.Open();
SqlDataReader sdr = SelectCmd.ExecuteReader();
if (sdr.Read())
{
i=1;
lblMessage.Text="此用户已存在,请输入其他用户名";
}
else{
lblMessage.Text="此用户名是可用的!";
}
return i;
}
catch(System.Exception ee){
Response.Write("<script language=javascript>alert('"+ee.Message.ToString()+"')</script>");

}
finally{
conn.Close();
}
}