FormView更新参数作为对象

时间:2013-05-07 14:25:29

标签: asp.net formview

所以我的formview有大约30个字段。是否有可能将所有这些参数作为对象发送到我的更新方法,而不是将它们中的每一个作为参数单独发送?

谢谢 -

1 个答案:

答案 0 :(得分:0)

我认为您可以使用ObjectDataSource。定义ObjectDataSource时,指定要使用的函数(例如UpdateMethod属性)以及应传递给该函数的对象类型(例如DataObjectTypeName属性)。

然后,当您的表单被提交时,它将自动调用您指定的UpdateMethod,并向其传递填充了FormView中的值的对象。为此,您必须将FormView控件绑定到对象属性。

以下是一些代码示例......

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
    SelectMethod="GetItem" 
    InsertMethod="InsertItem" 
    UpdateMethod="UpdateItem" 
    TypeName="ClassName_OfMyObjectContainingMethodsSpecifiedAbove"
    DataObjectTypeName="ClassName_OfMyDataObject" >

<asp:FormView ID="FormView1" runat="server" 
    DataSourceID="ObjectDataSource1" DataKeyNames="PropertyName_OfMyKeyField">

    <EditItemTemplate>

        <asp:TextBox ID="TextBox_Description" runat="server" 
            MaxLength="50" Columns="30" 
            Text='<%# Bind("Description") %>' />

    </EditItemTemplate>

</asp:FormView>