2017-11-02 18 views
1

私は最初のE-Fコードが実装されていてもストアドプロシージャにアクセスできないプロジェクトに取り組んでいます。今、それらをモデルにどのように追加できますか?既存のデータベースモデルにストアドプロシージャを追加する方法(コードの最初のアプローチ)?

+0

で説明しましたか?通常は、ストアドプロシージャのロジックを組み込むためにコントローラを使用します。 –

+0

私は既存のプロジェクトに取り組んでいます。私はストアドプロシージャを使用したいと思います。既存のロジックを再構築するのに時間がかかります。今はストアプロシージャにアクセスできますか? –

答えて

1

既存のデータベースの場合は、Microsoft SQL Server Management Studioを使用してストアドプロシージャにアクセスできます。これらは、オブジェクトエクスプローラの 'Your database'> 'Programmability'> 'Stored Procedures'にあります。私はかなりストアドプロシージャとエンティティフレームワークの両方を使用することは一般的な方法ではないことは確かですが。

質問に答えるには、上記のオブジェクトエクスプローラで[ストアドプロシージャ]フィルタを右クリックし、[ストアドプロシージャ]オプションをクリックしてデータベースにストアドプロシージャを追加します。

コード第1エンティティフレームワークを使用しているときに、ストアドプロシージャが必要なのですなぜあなたはMSSMSを使用しない場合、あなたはまた、エンティティフレームワークが提供する移行機能を使用してC#でのストアドプロシージャを追加することができ、this question.

+0

実際にストアドプロシージャはすでにdb内に存在していました。最初のefコードを実装すると、dbテーブルと一緒に「OnModelCreating」メソッドでストアドプロシージャを追加するのを忘れる可能性があります。既存のEntityモデルにSPを追加します。可能でしたか? –

+1

'modelBuilder.Entity ().MapToStoredProcedures();'を使用して、モデルをストアドプロシージャにバインドすることができます。これについては、[このMSDNページ](https://msdn.microsoft.com/ja)で説明しています。 -us/library/dn468673(v = vs.113).aspx) –

+0

はいこれをOnModelCreating mrthodに追加し、solution.Butを構築しました。移行を実行する必要はありますか?もう一度ですか? –

関連する問題