日期:2014-05-17  浏览次数:20462 次

Request.QueryString.ToString()的问题
private void show()
{
string id=Request.QueryString.ToString();
// Response.Write(id);
string strsql="select * from article where articleid="+Convert.ToInt16(id);
SqlConnection sqlcon=new SqlConnection("Server=.;uid=sa;pwd=123;Database=users");
SqlCommand sqlcom=new SqlCommand(strsql,sqlcon);
sqlcon.Open();
SqlDataReader sqldr=sqlcom.ExecuteReader();
if(sqldr.HasRows)
{
while(sqldr.Read())
{
Response.Write(sqldr["title"]+"<br>");
Response.Write(sqldr["content"]+"<hr>");
}
}
sqldr.Close();
sqlcon.Close();
}
红线部分有错吗?没错吧,但为什么提示
C# code
行 50:             string id=Request.QueryString.ToString();
行 51: //            Response.Write(id);
行 52:             string strsql="select * from article where articleid="+Convert.ToInt16(id);
行 53:             SqlConnection sqlcon=new SqlConnection("Server=.;uid=sa;pwd=123;Database=users");
行 54:             SqlCommand sqlcom=new SqlCommand(strsql,sqlcon);


请高手指点,其他都没问题,关键就是那一句,谢谢!

------解决方案--------------------
Request.QueryString.ToString(); 
不能这样写吧
一般是这样的
if(Request.QueryString[参数名]!=null&&Request.QueryString[参数名])!="")
{
string a=Request.QueryString[参数名];

}
------解决方案--------------------
C# code

private void show() 
{ 
    if(!string.IsNullOrEmpty(Request.QueryString["id"].Trim()))
    {
         string id=Request.QueryString["id"].ToString(); 

         string strsql="select * from article where articleid="+Convert.ToInt16(id); 
         SqlConnection sqlcon=new SqlConnection("Server=.;uid=sa;pwd=123;Database=users"); 
         SqlCommand sqlcom=new SqlCommand(strsql,sqlcon); 
         sqlcon.Open(); 
         SqlDataReader sqldr=sqlcom.ExecuteReader(); 
         if(sqldr.HasRows) 
         { 
            while(sqldr.Read()) 
            { 
                  Response.Write(sqldr["title"]+" <br>"); 
                  Response.Write(sqldr["content"]+" <hr>"); 
            } 
         } 
         sqldr.Close(); 
         sqlcon.Close(); 
           
    }
}