【发布时间】: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="data source=.;initial catalog=BeCivic;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework"" 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