运行查询时,我从Entity Framework获得以下元数据异常:
指定的架构无效。错误:
错误0194:加载到ItemCollection中的所有工件必须具有 相同的版本。遇到了多个版本。
Oracle.DataAccess.src.EntityFramework.Resources.EFOracleStoreSchemaDefinition.ssdl(2,28) :错误0172:所有SSDL工件必须以同一提供程序为目标。该 Provider'System.Data.SqlClient'不同于 先前遇到的'System.Data.SqlClient'。
Oracle.DataAccess.src.EntityFramework.Resources.EFOracleStoreSchemaDefinition.ssdl(2,64) :错误0169:所有SSDL工件必须以同一提供程序为目标。该 ProviderManifestToken'9.2'与'2012'不同 早些时候遇到过。
这是我的实体连接字符串
"metadata=res://*;provider=System.Data.SqlClient;provider connection string=\"SERVER=SERVER;DATABASE=DB;Trusted_Connection=True;\""
(它使用此方法从普通连接字符串派生:
private static string GetEntityConnectionString(string connectionString)
{
var sbEntity = new EntityConnectionStringBuilder();
sbEntity.Provider = "System.Data.SqlClient";
sbEntity.ProviderConnectionString = connectionString;
sbEntity.Metadata = "res://*";
return sbEntity.ToString();
}
我将标准连接字符串传递给它:"SERVER=SERVER;DATABASE=DB;Trusted_Connection=True;"
非常奇怪,它认为它与Oracle有关。我该如何解决?