我正在执行以下查询,并尝试使用来自先前查询的代码。 但是给了我以下错误:服务器标签格式不正确。
<asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:TesteConnectionString %>" SelectCommand="SELECT * FROM [Equipa] where idAssemb=1 and idDept=<%# Eval("idDept") %>"></asp:SqlDataSource>
我在Web表单asp.net中使用C#
有人可以帮我吗?
答案 0 :(得分:1)
Eval
来评估数据源中一行中的字段值。您正尝试在数据源控件本身内部使用它(在本例中为SQLDataSource)。您应该使用parameterized query
指定SelectParameters
标记内的参数值,如下所示: -
<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:TesteConnectionString %>"
SelectCommand="SELECT * FROM [Equipa] where idAssemb=1 AND idDept=@DeptId>
<SelectParameters>
<asp:ControlParameter ControlID="lblDeptId" Name="DeptId"
PropertyName="Text" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
请注意,这里我展示了WebForm中存在的控件示例。您可以通过Cookie,QueryString,Form,Session等指定DeptId
的值来源。