1

カスタムエンティティを一連のストアドプロシージャにマップしようとしています。エンティティのプロパティは、関数のインポートで使用される挿入プロシージャと更新プロシージャ、および選択プロシージャのパラメータに対応しています。XMLビューでEDMXファイルを開くと、エンティティオブジェクトのすべてのプロパティで次のエラーが発生します。

エラー11009:プロパティ'xxx'がマップされていません。

私はGoogleでこのエラーを検索しましたが、一部のフォーラムでは、エンティティはテーブルにのみマップできることが示唆されていました。カスタムエンティティをストアドプロシージャにマップすることは許可されていません。

データベース内のテーブルにマッピングせずに、カスタムエンティティをストアドプロシージャにマッピングできますか?そうでない場合、この問題を解決するためにEntity Frameworkを使用する最良のアプローチは何でしょうか?私の最初の考えは、複合型を作成してから、すべてのCRUDメソッドに関数インポートを使用することです。

4

1 に答える 1

1

エンティティフレームワークで複合型を返すストアドプロシージャを作成できますが、複合型にはストアドプロシージャのマッピングを含めることはできないと思います。ストアプロシージャで何かをしたい場合は、関数インポートを作成してストアプロシージャを呼び出すことができます。

ツールは、ストアプロシージャを呼び出すために必要なすべてのパラメータを使用してメソッドを作成します。プロシージャが選択を返す場合は、既存のエンティティへのマッピングを行うか、新しい複合型を作成できます。

于 2012-09-27T18:04:02.233 に答える