C# ObjectDataSource插入和更新方法错误

C# ObjectDataSource插入和更新方法错误,c#,.net,asp.net,ado.net,objectdatasource,C#,.net,Asp.net,Ado.net,Objectdatasource,我正在开发asp.NET3.5项目 当我想插入带有详细信息的视图时,发生了以下错误: 错误:ObjectDataSource“ObjectDataSource2”找不到参数为CITY\u NAME的非泛型方法“AddCity” <asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetCityByID" UpdateMethod="UpdateCity" InsertMethod="AddCit

我正在开发asp.NET3.5项目

当我想插入带有详细信息的视图时,发生了以下错误:

错误:ObjectDataSource“ObjectDataSource2”找不到参数为CITY\u NAME的非泛型方法“AddCity”

<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetCityByID" UpdateMethod="UpdateCity" InsertMethod="AddCity" TypeName="NOP_CRM.Lib.nop_cities" OldValuesParameterFormatString="original_{0}">
    <SelectParameters>
        <asp:ControlParameter ControlID="GridView1" Name="cityid" PropertyName="SelectedValue" Type="Int32" DefaultValue="1" />
    </SelectParameters>
    <UpdateParameters>                              
        <asp:Parameter Name="CITY_NAME" Type="String" />
    </UpdateParameters>
    <InsertParameters>
        <asp:Parameter Name="CITY_NAME" Type="String" />
    </InsertParameters>                                
</asp:ObjectDataSource>                    

在声明objectdatasource时,是否尝试将Name=“CITY\u Name”更改为Name=“cityname”,以使其与方法中的签名相匹配?

如下所示更新objectdatasource标记,它应该可以工作。在“插入参数”标记中指定了错误的参数名称

<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetCityByID" UpdateMethod="UpdateCity" InsertMethod="AddCity" TypeName="NOP_CRM.Lib.nop_cities" OldValuesParameterFormatString="original_{0}"> 
    <SelectParameters> 
        <asp:ControlParameter ControlID="GridView1" Name="cityid" PropertyName="SelectedValue" Type="Int32" DefaultValue="1" /> 
    </SelectParameters> 
    <UpdateParameters>                               
        <asp:Parameter Name="CITY_NAME" Type="String" /> 
    </UpdateParameters> 
    <InsertParameters> 
        <asp:Parameter Name="cityname" Type="String" /> 
    </InsertParameters>                                 
</asp:ObjectDataSource>   

我找到了这样的解决方案:我将cityname改为CITY\u NAME。但它不能像方法参数和objectdatasource参数之间的这种映射。。我认为这是VS2008的一个错误!!
<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetCityByID" UpdateMethod="UpdateCity" InsertMethod="AddCity" TypeName="NOP_CRM.Lib.nop_cities" OldValuesParameterFormatString="original_{0}"> 
    <SelectParameters> 
        <asp:ControlParameter ControlID="GridView1" Name="cityid" PropertyName="SelectedValue" Type="Int32" DefaultValue="1" /> 
    </SelectParameters> 
    <UpdateParameters>                               
        <asp:Parameter Name="CITY_NAME" Type="String" /> 
    </UpdateParameters> 
    <InsertParameters> 
        <asp:Parameter Name="cityname" Type="String" /> 
    </InsertParameters>                                 
</asp:ObjectDataSource>