2014-07-10 48 views
1

我很難連接到數據庫中的現有視圖。 我創建了模型,現在我試圖將DbSet添加到我現有的上下文中,以便我可以查詢它。ASP.NET MVC - 數據庫視圖爲DbSet?

我試過以下,但每次創建新的EF遷移時,都會嘗試將該對象作爲數據庫中的表創建。

public DbSet<SurveyResponse> SurveyResponses { get; set; } 

我嘗試了相同的聲明爲一個IQueryable這似乎停止表的創建,但是當我試圖訪問context.SurveyResponses,SurveyResponses被顯示任何數據。

任何想法?

+1

您是否嘗試過添加遷移名稱--ignorechanges它應該停止EF試圖創建表 – heymega

+0

@heymega - 工作,謝謝! 我想知道是否有辦法強制EF將此視爲視圖,但我不必忽略這些更改? – Tom

回答

1

要停止EF創建表,您可以在添加遷移時指定忽略更改標誌。

add-migration name -ignorechanges 

實體框架將視圖映射視爲與表映射相同。

只記得不要更新視圖實體,否則你會得到一個錯誤!