【问题标题】:Azure Deployment Entity Framework Connection String Keyword not supported: 'metadata'不支持 Azure 部署实体框架连接字符串关键字:“元数据”
【发布时间】:2018-10-14 01:26:47
【问题描述】:

我一直在使用 asp 和实体框架在本地开发一个应用程序来与我的数据库交互。我正在使用模型优先的方法。我想将此应用程序部署到 Azure,但我不断收到错误消息“不支持关键字:'元数据'。”

通过搜索和阅读这样的帖子:Windows Azure, Entity Framework. Keyword not supported: 'metadata'.

我知道我的连接字符串有问题,但我不知道我做错了什么。

我的本​​地网络配置中的连接字符串:

<add name="BeCivicData" connectionString="metadata=res://*/Models.BeCivicData.csdl|res://*/Models.BeCivicData.ssdl|res://*/Models.BeCivicData.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=BeCivic;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" /></connectionStrings>

为 Azure DB 生成的连接字符串:

Server=tcp:becivicserver.database.windows.net,1433;Initial Catalog=BeCivic;Persist Security Info=False;User ID={MyID};Password={MyPass}5;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;

在 Azure 应用程序设置页面上,我已将我的连接字符串定义为上述两个都不起作用,因此我尝试将它们组合以具有 EF 元数据(如下),但 Azure 连接字符串也给了我元数据错误:

metadata=res://*/Models.BeCivicData.csdl|res://*/Models.BeCivicData.ssdl|res://*/Models.BeCivicData.msl;provider=System.Data.SqlClient;provider connection string="Server=tcp:becivicserver.database.windows.net,1433;Initial Catalog=BeCivic;Persist Security Info=False;User ID={myid};Password={mypass}5;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" " providerName="System.Data.EntityClient"

在我的应用程序中,EF .edmx 文件位于名为 Models 的文件夹中。

数据库元素和代码元素分别部署到 azure 成功,现在我只需要将它们链接起来。

【问题讨论】:

    标签: entity-framework azure deployment azure-sql-database azure-web-app-service


    【解决方案1】:

    不支持关键字:元数据

    当您尝试在 Azure 门户Connection Strings 设置中使用连接字符串时,会出现上述错误。

    因此,尝试将类型从 SQLAzure 更改为 Custom

    您可以参考此article 进行故障排除。

    为避免自己解析连接字符串,您可以使用EntityConnectionStringBuilder 类解析字符串并从其ProviderConnectionString 属性中检索数据库连接字符串。

    【讨论】:

    • 我意识到我做错了什么。我有两个连接字符串,其中一个是实体框架,一个不是,但我给它们提供了相同的连接字符串,导致非 EF 数据连接出现问题。
    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多