我想在運行時從的DbContext獲取數據庫表名獲取表名,我發現posts談論它是不是EF 4.x中可能得到SSpace項目(以及表名)默認情況下,這些操作還沒有公共的API。如何從的DbContext在運行時
但我試圖使這方面的一些測試,我能夠從的DbContext在運行時使用調試器
這句法由Visual Studio生成
((System.Data.Entity.DbContext)(context)).System.Data.Entity.Infrastructure.IObjectContextAdapter.ObjectContext.MetadataWorkspace._itemsSSpace
我拿到表名進行了一些修改,以使其可用於代碼,並且產生至此
var objContext = (context as IObjectContextAdapter).ObjectContext;
var metaData = objContext.MetadataWorkspace;
var items = metaData.GetItems(DataSpace.SSpace);
雖然它遵循相同目標,items
拋出異常The space 'SSpace' has no associated collection.
- 第一:爲什麼會出現此錯誤。
- 第二:有沒有什麼辦法可以得到這個SSpcae的物品,或者表名?
可能重複[從實體框架元數據數據庫表名(http://stackoverflow.com/questions/1895455/獲取數據庫表名,從實體框架元數據) – bummi