提供程式不支援 DatabaseExists

szjay發表於2013-09-25

如果Oracle CodeFirst模式下要用EFProviderWrapperToolkit,那麼會報告以下錯誤:

提供程式不支援 DatabaseExists。

這個錯誤是因為Oracle CodeFirst是一個Fake CodeFirst,它其實不支援根據實體類生成資料表的。

換言之,我們的CodeFirst只是把Table與Entity做了一次手工對映。

因為Oracle的資料庫是已經存在了的,因此沒有必要做資料庫存在與否的檢測。

況且ODP.NET也不支援,因此當呼叫EFProviderWrapperToolkit的DbProviderServicesBase.DbDatabaseExists方法時,ODP.NET就報錯了。

解決辦法就是把DbDatabaseExists方法改為無條件返回true。

相關文章