C# 如何在SqlDataSource中传递动态值?

C# 如何在SqlDataSource中传递动态值?,c#,asp.net,C#,Asp.net,我需要在我的asp:SqlDataSource中传递此值Request.QueryString <asp:SqlDataSource runat="server" ID="SqlDataSource2" ConnectionString='<%$ ConnectionStrings:messageexchangeConnectionString %>' ProviderName='<%$

我需要在我的
asp:SqlDataSource
中传递此值
Request.QueryString

 <asp:SqlDataSource runat="server" 
                    ID="SqlDataSource2" ConnectionString='<%$ ConnectionStrings:messageexchangeConnectionString %>' 
                    ProviderName='<%$ ConnectionStrings:messageexchangeConnectionString.ProviderName %>' 
                    SelectCommand='SELECT distribution_address FROM exchange_distribution_groups ex WHERE (organisation_id = 'Request.QueryString["organisation"]') AND (distribution_address NOT IN (SELECT distribution_address FROM exchange_distribution_group_addresses address))'>     
 </asp:SqlDataSource>

您可以使用此

     <asp:SqlDataSource runat="server" ID="SqlDataSource2"
         ConnectionString='<%$ ConnectionStrings:messageexchangeConnectionString %>'
         ProviderName='<%$ ConnectionStrings:messageexchangeConnectionString.ProviderName %>'
         SelectCommand='SELECT distribution_address FROM exchange_distribution_groups ex WHERE (organisation_id = '<%# Request.QueryString["organisation"] %> ') AND (distribution_address NOT IN (SELECT distribution_address FROM exchange_distribution_group_addresses address))'>    
     </asp:SqlDataSource>

您可以使用此

     <asp:SqlDataSource runat="server" ID="SqlDataSource2"
         ConnectionString='<%$ ConnectionStrings:messageexchangeConnectionString %>'
         ProviderName='<%$ ConnectionStrings:messageexchangeConnectionString.ProviderName %>'
         SelectCommand='SELECT distribution_address FROM exchange_distribution_groups ex WHERE (organisation_id = '<%# Request.QueryString["organisation"] %> ') AND (distribution_address NOT IN (SELECT distribution_address FROM exchange_distribution_group_addresses address))'>    
     </asp:SqlDataSource>

试试这个:

<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
    ConnectionString="<%$ ConnectionStrings:messageexchangeConnectionString %>" 
    SelectCommand="SELECT organisation_id,distribution_address FROM exchange_distribution_groups ex WHERE (([organisation_id] = @id) AND (distribution_address NOT IN (SELECT distribution_address FROM exchange_distribution_group_addresses address))">
    <SelectParameters>
        <asp:QueryStringParameter Name="id" QueryStringField="organisation" Type="Int32" />
    </SelectParameters>
</asp:SqlDataSource>

试试这个:

<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
    ConnectionString="<%$ ConnectionStrings:messageexchangeConnectionString %>" 
    SelectCommand="SELECT organisation_id,distribution_address FROM exchange_distribution_groups ex WHERE (([organisation_id] = @id) AND (distribution_address NOT IN (SELECT distribution_address FROM exchange_distribution_group_addresses address))">
    <SelectParameters>
        <asp:QueryStringParameter Name="id" QueryStringField="organisation" Type="Int32" />
    </SelectParameters>
</asp:SqlDataSource>


SelectCommand
似乎极易受影响。该
SelectCommand
似乎极易受影响。感谢您的帮助,我想我已经做到了,但我遇到了以下错误:解析器错误描述:在解析服务此请求所需的资源时发生错误。请查看以下特定的解析错误详细信息,并适当修改源文件。分析器错误消息:服务器标记的格式不正确。@如果asp.net标记不完整且不遵循指定的格式,则会引发Ismail Saifo-“服务器标记的格式不正确”。我相信它与SqlDataSource标记是一致的。检查一下,我这样做了,但当我输入:我得到错误:(感谢您的帮助,我想我已经达到了目的,但我遇到了以下错误:解析器错误描述:在解析服务此请求所需的资源时出错。请查看以下特定的解析错误详细信息,并适当修改源文件。解析器错误消息:服务器标记格式不正确。@Isma如果asp.net标记不完整且不遵循指定的格式,则会引发il Saifo-“服务器标记格式不正确”。我相信它与SqlDataSource标记一致。检查后我这样做了,但当我输入:我得到错误:(感谢您的帮助:)但是它什么也不返回!!我认为它不具有组织的价值!!!谢谢你的帮助:)但是它什么也不返回!!我认为它不具有组织的价值!!!