我如何解决"Keyword not supported: 'metadata' "?

How do I solve "Keyword not supported: 'metadata' "?

我无法连接到 SQL 服务器,我项目的连接字符串是:

<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=&quot;data source=*****;initial catalog=****;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我收到这个错误:

Keyword not supported: 'metadata'

如何解决这个错误?

只有 Entity Framework 支持该连接字符串。 (公平地说,关键字“实体”在键名中!)如果要在 ADO 原始连接中使用连接字符串,请删除 &quot; 字符串部分以外的所有内容,包括 &quot;小号:

改为:

<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 类型。 可能的方法是跳过元数据,然后获取完整的连接字符串。

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; }