如何解决“不支持关键字:'元数据'”?
问题描述:
我无法连接到SQL Server和我的项目的连接字符串是:如何解决“不支持关键字:'元数据'”?
<add name="Teleport_DEVEntities" connectionString="metadata=res://*/Data.Model.AdvertisingModel.csdl|res://*/Data.Model.AdvertisingModel.ssdl|res://*/Data.Model.AdvertisingModel.msl;provider=System.Data.SqlClient;provider connection string="data source=*****;initial catalog=****;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
我得到这个错误:
Keyword not supported: 'metadata'
如何解决这个问题?
答
该连接字符串仅受实体框架支持。 (公平地说,关键字“实体”在关键名称中!)如果要在ADO原始连接中使用连接字符串,请删除"
字符串部分以外的任何内容,包括"
s:
更改它于: <add name="Teleport_DEVEntities" connectionString="data source=*****;initial catalog=****;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.EntityClient" />
答
通行证只有这么多,将工作
<add name="Teleport_DEVEntities" connectionString="data source=*****;initial catalog=*****;User ID=****;password=*****;MultipleActiveResultsets=True" providerName="System.Data.EntityClient" />
答
看来是的connectionString类型的EntityFramework的。 可能的方法可能是跳过元数据,然后获取完整的connectionString。
The below code saved my time !!
if (connectionString.ToLower().StartsWith("metadata=")) {
System.Data.Entity.Core.EntityClient.EntityConnectionStringBuilder efBuilder = new System.Data.Entity.Core.EntityClient.EntityConnectionStringBuilder(connectionString);
connectionString = efBuilder.ProviderConnectionString; }
错误得到解决。谢谢。 –