为什么在删除时会出现ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。详细异常如下:“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪:
[InvalidOperationException: ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。]
System.Web.UI.WebControls.ObjectDataSourceView.GetResolvedMethodData(Type type, String methodName, Type dataObjectType, Object oldDataObject, Object newDataObject, DataSourceOperation operation) +1053
System.Web.UI.WebControls.ObjectDataSourceView.ExecuteDelete(IDictionary keys, IDictionary oldValues) +439
System.Web.UI.DataSourceView.Delete(IDictionary keys, IDictionary oldValues, DataSourceViewOperationCallback callback) +71
System.Web.UI.WebControls.GridView.HandleDelete(GridViewRow row, Int32 rowIndex) +928
System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +1152
System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +201
System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +172
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5616
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42 要怎样才能删除一条ArticleType??--------------------------------------------------------------------------------
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Test_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False" DataKeyNames="TypeID">
<Columns>
<asp:BoundField DataField="TypeID" HeaderText="TypeID" SortExpression="TypeID" />
<asp:BoundField DataField="Sequence" HeaderText="Sequence" SortExpression="Sequence" />
<asp:BoundField DataField="TypeName" HeaderText="TypeName" SortExpression="TypeName" />
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="SelectAll"
TypeName="BusinessLayer.ArticleType" DataObjectTypeName="EntityLayer.ArticleTypeEntity" UpdateMethod="Update" InsertMethod="Insert" DeleteMethod="Delete">
<DeleteParameters>
<asp:Parameter Name="TypeID" Type="Int32" />
</DeleteParameters>
</asp:ObjectDataSource>
</form>
</body>
</html>
--------------------------------------------------------------------------------
public class ArticleType
{
ArticleTypeAccess access;
public ArticleType()
{
access = new ArticleTypeAccess( );
}
public bool Exists(string typeName)
{ return access.Exists(typeName);
} public List<ArticleTypeEntity> SelectAll()
{
return access.SelectAll();
}
public int Delete(int TypeID)
{
return access.Delete(TypeID);
} public int Insert(ArticleTypeEntity entity)
{
return access.Insert(entity);
} public ArticleTypeEntity SelectEntity(int TypeID)
{
return access.SelectEntity(TypeID); } public int Update(ArticleTypeEntity entity)
{
return access.Update(entity);
}
}--------------------------------------------------------------------------------
public class ArticleTypeEntity
{
public ArticleTypeEntity()
{ } private int typeID;
private string typeName;
private int sequence; public int TypeID
{
get { return typeID; }
set { typeID = value; }
} public string TypeName
{
get { return typeName; }
set { typeName = value; }
}
public int Sequence
{
get { return sequence; }
set { sequence = value; }
}
}
--------------------------------------------------------------------------------ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪:
[InvalidOperationException: ObjectDataSource“ObjectDataSource1”未能找到接受“EntityLayer.ArticleTypeEntity”类型的参数的非泛型方法“Delete”。]
System.Web.UI.WebControls.ObjectDataSourceView.GetResolvedMethodData(Type type, String methodName, Type dataObjectType, Object oldDataObject, Object newDataObject, DataSourceOperation operation) +1053
System.Web.UI.WebControls.ObjectDataSourceView.ExecuteDelete(IDictionary keys, IDictionary oldValues) +439
System.Web.UI.DataSourceView.Delete(IDictionary keys, IDictionary oldValues, DataSourceViewOperationCallback callback) +71
System.Web.UI.WebControls.GridView.HandleDelete(GridViewRow row, Int32 rowIndex) +928
System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +1152
System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +201
System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +172
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5616
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42 要怎样才能删除一条ArticleType??--------------------------------------------------------------------------------
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Test_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False" DataKeyNames="TypeID">
<Columns>
<asp:BoundField DataField="TypeID" HeaderText="TypeID" SortExpression="TypeID" />
<asp:BoundField DataField="Sequence" HeaderText="Sequence" SortExpression="Sequence" />
<asp:BoundField DataField="TypeName" HeaderText="TypeName" SortExpression="TypeName" />
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="SelectAll"
TypeName="BusinessLayer.ArticleType" DataObjectTypeName="EntityLayer.ArticleTypeEntity" UpdateMethod="Update" InsertMethod="Insert" DeleteMethod="Delete">
<DeleteParameters>
<asp:Parameter Name="TypeID" Type="Int32" />
</DeleteParameters>
</asp:ObjectDataSource>
</form>
</body>
</html>
--------------------------------------------------------------------------------
public class ArticleType
{
ArticleTypeAccess access;
public ArticleType()
{
access = new ArticleTypeAccess( );
}
public bool Exists(string typeName)
{ return access.Exists(typeName);
} public List<ArticleTypeEntity> SelectAll()
{
return access.SelectAll();
}
public int Delete(int TypeID)
{
return access.Delete(TypeID);
} public int Insert(ArticleTypeEntity entity)
{
return access.Insert(entity);
} public ArticleTypeEntity SelectEntity(int TypeID)
{
return access.SelectEntity(TypeID); } public int Update(ArticleTypeEntity entity)
{
return access.Update(entity);
}
}--------------------------------------------------------------------------------
public class ArticleTypeEntity
{
public ArticleTypeEntity()
{ } private int typeID;
private string typeName;
private int sequence; public int TypeID
{
get { return typeID; }
set { typeID = value; }
} public string TypeName
{
get { return typeName; }
set { typeName = value; }
}
public int Sequence
{
get { return sequence; }
set { sequence = value; }
}
}
解决方案 »
- .net 如何后台设定,如果访问者不再网段内就无权访问网站???
- 网站导航栏选择字体特效
- 关于 GridView
- 在VS.Net中碰到一个相当麻烦的问题~~~
- imagebutton的图片是一透明背景的gif,但是网页中按钮显示黑色背景,能否去掉默认背景?
- 关于一个循环的小问题
- 请问在ASP.NET(WEB应用程序)里如何实现Windows应用程序中的InputBox()功能?
- 为何ASP.NET网站有时会出现应用程序没有启动的情况?
- 关于父窗口和子窗口的问题(在线等)
- 关于treeview节点增、删、改的问题
- 要在一张图中,平均分布画画十个点!怎么实现呢?
- 怎么使修改IIS默认端口后,vs.net仍然可以创建.net项目啊
<asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False" DataKeyNames="TypeID">关键列索引是不是 这个? DataKeyNames="TypeID">上面有完整异常信息了,具体哪行异常中也没有给出来的,不知道为什么会这样。