一个简单的数据varchar 转换int 问题

自学NET,很多简单问题搞不明白。

我用A.ASPX的<a href="xxx.aspx?id=uid">传值UID到XXX.ASPX页面。

XXX.ASPX页面我用了 <%int uuid=Convert.ToInt32(Request.QueryString["uid"]);%>接收UID值
         <%Response.Write(uuid); %>  //这个验证是否接收到了
 然后用了个SqlDataSource控件,想把得到的UUID值给下面的SQL语句中,数据库中的id值是INT型的。
  
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:uandm.com.cnConnectionString %>" 
            SelectCommand="SELECT * FROM [tbBooks] WHERE id='&uuid&'">
        </asp:SqlDataSource>

总是出现“在将 varchar 值 '&uuid&' 转换成数据类型 int 时失败。”崩溃啊 可是上面我用了Convert.ToInt32转的啊 。 我试过了'"&uuid&"' ,+'"&uuid&"' 都不行。

PS:我是在ASPX的页面中添加的代码 ,在CS中的不用SqlDataSource 控件链接数据库的那个我会。赋值给DetailsView就全部显示了,表项名不好调整。只是想用SqlDataSource 控件后再用DetailsView控件好调整。

嘿嘿 谢谢大家了。


红颜莎娜
浏览 444回答 1
1回答

冉冉说

数据源的参数来源我们可以真接取QueryStringField的值这里是我设置的一个SQL数据源控件,我直接设置了,参数来至URL 并且是ID的值,这里根本就不涉及类型转换的问题这里我还给了个默认值0,就是当URL没有ID这个参数时,数据源会用0来查找数据库
打开App,查看更多内容
随时随地看视频慕课网APP