私はEF7を介してデータベースにマップされたモデルを持っています。すべてのプロパティは、テーブルのマッピングされた列と同じです。Entity Framework 7ストアドプロシージャの結果モデル
私はいくつかの結合された列を返しますが、基底は引き続きマップされたモデルです。
私のデータベース(Table1)にマップされているモデル(エンティティ)は次のとおりです。
public partial class Table1 { public int id { get; set; } public bool Column1{ get; set; } public int Column2 { get; set; } public int Column3 { get; set; } public int Column4 { get; set; } public int Column5 { get; set; } }
私のStoredProcedureは、このオブジェクトに関する追加情報が含まれている別のテーブルから、これらのすべての列、さらに列を返します。
だから私のStoredProcedureは、次のようになります。私のアイデアは、ちょうどこれはのStoredProcedureを実行するために働いているモデルpublic string JoinedColumn1 {get; set;}
にプロパティを追加することでしたが、それは、すぐに働いていない
CREATE PROCEDURE Table1_Select
AS
BEGIN
SELECT Column1,
Column2,
Column3,
Column4,
Column5,
Table2.JoinedColumn1
FROM Table1
JOIN Table2 on Table1.ID = Table2.ID_Table1
END
私は1つのエンティティを取得したいから
MyContext.Table1.FirstOrDefault(t=>t.id == 1)
これは常にサーバーを返しますFiddlerのエラー500では、 "Table1.FromSql(" Table1Select ")"でのストアドプロシージャの実行が正常に機能します。
または、モデルに直接StoredProceduresを使用するかエンティティに直接アクセスするかを決定する必要がありますか?
これに関するベストプラクティスまたは解決策はありますか?
事前に感謝します。 Nicn
はなぜストア手順は、Entity Frameworkのデータベースファースト・アプローチを使用してプロジェクトに含まれていないのですか? –
ScaffoldコマンドでStoredProceduresを追加するには?私は[このリンク](https://github.com/aspnet/EntityFramework/wiki/Design-Meeting-Notes-(10月1日、-2015)#テーブル選択のリバースエンジニアリング)テーブルのためのtまたはスキーマの-s ... – nicn