自学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控件好调整。
嘿嘿 谢谢大家了。
数据源的参数来源我们可以真接取QueryStringField的值
这里是我设置的一个SQL数据源控件,
我直接设置了,参数来至URL 并且是ID的值,这里根本就不涉及类型转换的问题
这里我还给了个默认值0,就是当URL没有ID这个参数时,数据源会用0来查找数据库
Code
同意楼上