4

と を含む ASP.NET ページで作業していGridViewますObjectDataSource

ビジネス層のクラス (DataObject() で装飾) に対して ObjectDataSource を構成したいと考えています。非常によく似た方法で設定された他の多くのクラスのクラス。クラスを選択し、[次へ] をクリックして SelectMethod の関数を選択しましたが、警告もエラーも発生せずに終了します。

TypeNameスマホ用のスマホをセットしてObjectDataSourceスマホに装着できGridViewます。しようとしRefresh Schemaましたが、エラーポップアップが表示されました:

「スキーマの更新」の呼び出し中にエラーが発生しました。詳細: 呼び出しのターゲットによって例外がスローされました。

を手動でセットアップすることもできますObjectDataSourceが、私は本質的に怠け者で、GUI を使用することを好みます。

なぜ失敗するのですか?

すべてがうまく構築されます。すべてを手動で接続でき、ページは問題なく動作します。それでもObjectDataSource、UI を使用して構成しようとすると失敗します。

4

1 に答える 1

0

Exception has been thrown by the target of an invocation.ODS コントロールには、適切に動作するための前提条件がいくつかあり、これらの構成の一部が正しくない場合、ジェネリックがスローされます。問題を解決するには、次のことを試してください。

  1. ODS コントロールにバインドされたクラスには、パラメーターをとらないデフォルトの空のコンストラクターが必要です。オーバーロードしても問題ありませんが、少なくともデフォルトの空のコンストラクターが必要です。これが存在することを確認してください。

  2. ODS を含む UI プロジェクトによって参照される別のプロジェクト内にそのクラスが存在する場合、ODS はバインドされたクラスから抜け出すことができます。ODS ウィザードが現在のクラス スキーマを読み取れるように、ソリューションを完全にクリーンアップして再構築してください。

  3. ODS を削除し (ソースの IDS からカスタマイズされたプロパティをメモ帳に保存して、後でアイテムごとに追加し直します)、新しいものを追加してみてください。新しい ODS が追加されたら、ウィザードを使用して必要なクラスを指定し、それが機能するかどうかを確認します。

于 2011-07-29T17:52:58.260 に答える