Request.QueryString.ToString()的问题

ritiande 2008-04-17 10:53:17
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();
}
红线部分有错吗?没错吧,但为什么提示
行 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);


请高手指点,其他都没问题,关键就是那一句,谢谢!
...全文
640 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
lindanhuayatou 2012-06-01
  • 打赏
  • 举报
回复
说的好,我已经解决问题了,谢谢楼主!!啦啦
ritiande 2008-04-19
  • 打赏
  • 举报
回复
ok了,马上结账
miaoyu04 2008-04-19
  • 打赏
  • 举报
回复
都没有传值过来,如何获取?
wszbdr 2008-04-19
  • 打赏
  • 举报
回复
应该这样用
string id=Request.QueryString["id"].ToString();
zengxie 2008-04-19
  • 打赏
  • 举报
回复
string id=Request.QueryString.ToString();

格式不对string id=Request.QueryString["id"].ToString();
chenyuan19850729 2008-04-19
  • 打赏
  • 举报
回复
这样并没获取到值,你这id为null
ritiande 2008-04-18
  • 打赏
  • 举报
回复
string id = Request.QueryString.ToString();
然后response.write(id);
也并没有错,而且是接受到了正确参数,但改成下面这样就没有问题了
Request.QueryString["id"].ToString();
照理说,既然都能response了,也应该能进行转换啊、查询之类的操作啊,为什么就不行呢,嘿嘿
Request.QueryString没掌握好,当然不能想当然了,谢谢各位了。
再次继续讨论……
simplePJlife 2008-04-18
  • 打赏
  • 举报
回复
进来学习。楼上的都说的很清楚了。
kai5903051 2008-04-18
  • 打赏
  • 举报
回复
string strsql="select * from article where articleid="+Convert.ToInt32(id.ToString());
Magic_YJL 2008-04-18
  • 打赏
  • 举报
回复
string id=Request.QueryString.ToString();
没见过这种用法,应该这样用:
string id=Request.QueryString["id"].ToString();
shinevi 2008-04-18
  • 打赏
  • 举报
回复
string id=Request.QueryString["id"];
littlehand 2008-04-18
  • 打赏
  • 举报
回复
string id=Request.QueryString.ToString();

把这句输出你就茅塞顿开了
shenjiaxiong 2008-04-18
  • 打赏
  • 举报
回复
为什么不直接在这句:string id=Request.QueryString["id"].ToString(); 把id 转换成int型

直接这样写 int id = Convert.ToInt32(Request.QueryString["id"]); 不是省事?
abc83915 2008-04-18
  • 打赏
  • 举报
回复
oec2003 2008-04-17
  • 打赏
  • 举报
回复
你的id传进来时数字类型的吗
oec2003 2008-04-17
  • 打赏
  • 举报
回复

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();

}
}



kqh168 2008-04-17
  • 打赏
  • 举报
回复
需要判断下 Request.QueryString["id"]不为空
kqh168 2008-04-17
  • 打赏
  • 举报
回复
string strsql="select * from article where articleid="+id;
或者
string strsql="select * from article where articleid='"+id+"'";


jiangmin168168 2008-04-17
  • 打赏
  • 举报
回复
Request.QueryString.ToString();
不能这样写吧
一般是这样的
if(Request.QueryString[参数名]!=null&&Request.QueryString[参数名])!="")
{
string a=Request.QueryString[参数名];

}
ritiande 2008-04-17
  • 打赏
  • 举报
回复
补充:提示 输入字符串的格式不正确

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧