1

Gridview を使用して、オブジェクト データ ソースからデータ テーブルを表示しようとしています。それは私にエラーを与えています:

ObjectDataSource 'odsStores' could not find a non-generic method 'ProcessDelete' that has parameters: ProcessID.

大文字と小文字の一致、形式の一致、変数の一致について、この質問に対する他の多くの回答を読みましたが、それらすべてを正しく行ったと思います。aspx ページは次のとおりです。

                <asp:GridView ID="gridStores" runat="server" AllowSorting="False" AutoGenerateColumns="False"
                    CssClass="grid-main" DataSourceID="odsStores" EnableViewState="False" OnDataBound="gridStores_DataBound"
                    OnRowDataBound="gridStores_RowDataBound">
                    <Columns>
                        <asp:TemplateField ShowHeader="False">
                            <ItemTemplate>
                                <asp:Image ID="imgModel" runat="server" AlternateText="Click to See Details" CssClass="img-details"
                                    EnableViewState="False" ImageUrl="~/img/detail.gif" />
                            </ItemTemplate>
                            <ItemStyle CssClass="grid-main-detail" />
                        </asp:TemplateField>
                        <asp:BoundField DataField="ProcessID" HeaderText="ProcessID" />
                        <asp:BoundField DataField="ProcessName" HeaderText="Process Name" ReadOnly="False" />
                        <asp:BoundField DataField="ProcessDescription" HeaderText="Process Description" ReadOnly="False" />
                        <asp:BoundField DataField="UpdateUserID" HeaderText="Last Updated By" ReadOnly="True" />
                        <asp:BoundField DataField="UpdateTimestamp" HeaderText="Last Updated" ReadOnly="True" />
                        <asp:CommandField ShowEditButton="True" />
                        <asp:CommandField ShowDeleteButton="True" />
                    </Columns>
                </asp:GridView>

これがコードビハインドです。私が持っているのはブレークポイントだけで、決してヒットしません。

<DataObjectMethod(DataObjectMethodType.Delete)> _
Private Sub ProcessDelete(ByVal ProcessID As String)
    Dim x As Integer = 0
    x = x + 1
End Sub

オブジェクトのデータソースは次のとおりです。

<asp:ObjectDataSource ID="odsStores" runat="server" EnableViewState="False" OldValuesParameterFormatString="original_{0}"
                    SelectCountMethod="GetRowCount" SelectMethod="GetData" TypeName="DataWarehouseUserInterface.ProcessBSL"
                    UpdateMethod="ProcessUpdate" DeleteMethod="ProcessDelete" >
                    <UpdateParameters>
                        <asp:FormParameter Name="ProcessName" Type="String" FormField="ProcessName" />
                        <asp:FormParameter Name="ProcessDescription" Type="String" FormField="ProcessDescription" />
                    </UpdateParameters>
                    <DeleteParameters>
                        <asp:FormParameter Name="ProcessID" Type="String"/>
                    </DeleteParameters>
                </asp:ObjectDataSource>
4

2 に答える 2