【问题标题】:How to have checkbox as objectDataSource update parameter?如何将复选框作为 objectDataSource 更新参数?
【发布时间】:2011-07-06 14:53:59
【问题描述】:

在 ObjectDataSource 中,我的复选框总是被忽略。我的更新方法总是收到 NULL。我在这里做错了什么?

谢谢。

<asp:CheckBox ID="CheckBoxSort" runat="server" Checked="true" />

CheckBox 是独立的。它不包含在任何其他 .net 控件中。 ....

<asp:ObjectDataSource ID="odsProfileItems" runat="server" SelectMethod="GetProfileItemsForCategory" TypeName="Valero.WEB.BO.StoreProfile.ProfileItemService"             UpdateMethod="UpdateProfileItem">
    <SelectParameters>
        <asp:Parameter Name="CategoryID" Type="Int32" />
    </SelectParameters>
    <UpdateParameters>
        <asp:ControlParameter Name="IsSorting" ControlID="CheckBoxSort" PropertyName="Checked" />
    </UpdateParameters>
</asp:ObjectDataSource>

【问题讨论】:

    标签: .net parameters checkbox objectdatasource


    【解决方案1】:

    当使用带有对象数据源的 CheckBox 控件时,传递给连接的“更新”方法的值必须是布尔类型。我经常这样做,看看我的代码:

     <UpdateParameters>
           <asp:Parameter Name="IsAdminUser" Type="Boolean" />
           <asp:Parameter Name="IsPowerUser" Type="Boolean" />  
     </UpdateParameters>
    

    现在也只是为了向您展示,这是我如何将页面上的 CheckBox 与“选择”中的数据绑定:

    <asp:CheckBox ID="chkIsAdmin" runat="server" Checked='<%# Bind("IsAdminUser") %>' />
    

    这个复选框控件恰好在一个 GridView 中,而 GridView 的数据源是 Object Data Source 控件,所以这是数据绑定的地方。无论您使用的是 GridView 还是任何其他控件(例如普通复选框),您都应该能够使用上述格式来正确绑定和更新复选框。

    【讨论】:

    • 你试过我提供的代码了吗?您使用的是布尔值吗?
    • 谢谢。这很好用。我什至不知道以这种方式绑定是可能的。我接受了它作为答案。但是,仍然有什么好的解释为什么我的代码不起作用?
    • 不,我从未尝试将 ControlID 直接连接到 UpdateParameter 中,并且不确定“Checked”属性名是否正常工作(显然不是)。复选框有时会表现出一些奇怪的行为,我相信这是最好的工作解决方案。
    【解决方案2】:

    您是否尝试过从呈现的 HTML 页面中找出 Checkbox 控件 ID。有时,如果您使用母版页,它可能会更改 controlId。

    【讨论】:

    • 当然,母版页会更改客户端 ID。但在这里我处理的是服务器端 ID。所以客户端 ID 无关紧要。我通常认为 ObjectDataSource 的向导有问题...
    • 我认为客户端 controlId 很重要。可能您可以尝试检查一次 controlId 以进行调试。如果它不起作用,那么 ObjectdataSource 有问题。我们必须弄清楚。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    • 1970-01-01
    • 2011-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多