我正在使用 GridViewObjectDataSource 处理 ASP.NET 页面。

我想针对业务层中的类(用 DataObject() 装饰)配置 ObjectDataSource。许多其他类中的一个类以非常相似的方式设置。我选择了该类并单击 Next 选择 SelectMethod 的函数,但它关闭时没有警告也没有任何错误。

我可以为 TypeName 设置 ObjectDataSource 并将其附加到 GridView 。我尝试 Refresh Schema 并弹出错误消息:



我可以手动设置 ObjectDataSource ,但我天生懒惰,更喜欢使用 GUI。

为什么会失败?

一切都很好。我可以手动连接所有东西,页面工作得很好。然而,当我使用 UI 配置 ObjectDataSource 时它仍然失败。

最佳答案

ODS 控件有一些先决条件才能正常工作,如果其中一些配置不正确,则会抛出通用的 Exception has been thrown by the target of an invocation.。以下是一些尝试解决问题的方法:

  • 绑定(bind)到 ODS 控件的类必须有一个不带任何参数的默认空构造函数。可以重载它,但至少必须有一个默认的空构造函数;确保这存在。
  • 如果该类存在于包含 ODS 的 UI 项目所引用的另一个项目中,则 ODS 可以脱离其绑定(bind)类。确保完全清理并重新构建解决方案,以便 ODS 向导可以读取当前的类模式。
  • 尝试删除 ODS(将源中 IDS 中的任何自定义属性保存到记事本,以便稍后逐项添加回来)并添加一个新属性。添加新的 ODS 后,使用 Wizzard 指向您想要的类,看看它是否有效。
  • 关于asp.net - ObjectDataSource 抛出异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/264286/

    10-11 02:26