質問: 開発環境では、EFデータモデル(.edmx)に追加し、EFが作成するメソッドラッパーを使用してコード内で呼び出したいストアドプロシージャがあります。 私たちの開発環境は、プロダクションと同期して100%ではないので、開発環境に展開されたストアドプロシージャを「データベースからモデルを更新」メニューオプションを使って追加しようとすると、モデル内の既存のエンティティはすべてリフレッシュされ、 。 私はモデルの既存のエンティティをリフレッシュせずにストアドプロシージャを追加する方法を見つけようとしているので、開発と生産の違いはありません。 どのようにこれを達成するための任意のアイデア? アップデート1: 周りを見て、さまざまなことを試した後、私は、これを行う最も簡単な方法は、開発環境を指し示しているモデルを更新してから、プロダクションを指すことになるという結論に達しました。それらの間に違いがある場合、Visual Studioでプロパティマッピングが見つからないというエラーが表示されます。これらのプロパティを見つけてモデルから削除するだけです。 または @Jonathan Amendが提案したことは、うまくいくはずです
回答: 開発用データベースサーバーからedmxを更新しないのはなぜですか?これがオプションでない場合は、開発と生産の間に新しいストアドプロシージャを保持するための仲介を作成することができます。たとえば、運用データベースのスキーマに基づいて新しいデータベースプロジェクトを作成し、新しい格納されたprocを追加して、データベースプロジェクトを新しいデータベースに展開することができます。新しいデータベースからedmxを更新してください。