2016-05-01 152 views
0

我有一個SQL數據庫視圖,我想在實體框架中爲其定義代碼。該視圖將顯示在我的網頁中。使用實體框架獲取視圖

問題是我不確定我是否希望將來在數據庫視圖中添加更多的列。這些列現在不能識別,我現在不知道它們會是什麼(如果我將它們添加)。

我想允許靈活地添加列到數據庫視圖,並且我的網頁中的視圖將相應地改變到數據庫視圖。

對於此更改,我不想更改Entity Framework端的dll(不再從新視圖生成對象並再次發佈)。

任何想法都可以做到這一點嗎?

感謝

回答

1

由於實體框架是對象關係映射技術,我不認爲那是因爲你不希望有保持同步映射,我不能很好的使用情況吧看到你在做什麼的實體有很多好處。

我只使用原始數據讀取器。使用DataReader,您可以選擇Select * From MyView作爲SQL,然後使用GetSchemaTable方法來確定在運行時存在哪些列,並循環它們等等,以便在視圖更改時保持靈活性。 (基於Sql Server SqlDataReader的鏈接,但可以針對特定的數據庫提供者進行調整)。