C# 部署到Azure后ASP.NET web api应用程序数据库错误

C# 部署到Azure后ASP.NET web api应用程序数据库错误,c#,asp.net,azure,asp.net-web-api,azure-sql-database,C#,Asp.net,Azure,Asp.net Web Api,Azure Sql Database,我有一个ASP.NETWebAPI项目,它使用实体框架连接到MS SQL数据库。该项目在本地运行时运行良好 我在Azure上发布了该项目,在云中创建了一个DB,还在DB中添加了必要的表。网站发布后,在我尝试访问控制器(例如:mywebsite.azurewebsites.net/api/Groups)之前,一切似乎都很好,我收到以下错误: 在发布项目之前,我已启用迁移。启用迁移时,我得到一个错误,说有两个数据库:ApplicationDbContext和myDB(表所在的位置)。所以我只在my

我有一个ASP.NETWebAPI项目,它使用实体框架连接到MS SQL数据库。该项目在本地运行时运行良好

我在Azure上发布了该项目,在云中创建了一个DB,还在DB中添加了必要的表。网站发布后,在我尝试访问控制器(例如:mywebsite.azurewebsites.net/api/Groups)之前,一切似乎都很好,我收到以下错误:

在发布项目之前,我已启用迁移。启用迁移时,我得到一个错误,说有两个数据库:ApplicationDbContext和myDB(表所在的位置)。所以我只在myDB上启用了迁移。这个错误与此有关吗

编辑: 以下是Azure和web.config文件中的连接字符串:

    <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User Id=userName@xxxxxxxxx;Password=myPassword" providerName="System.Data.SqlClient" />    
    <add name="IMSEntities" connectionString="metadata=res://*/Models.IMSEntities.csdl|res://*/Models.IMSEntities.ssdl|res://*/Models.IMSEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User Id=userName@xxxxxxxxx;Password=myPassword&quot;" providerName="System.Data.EntityClient" />
    <add name="IMSEntities_DatabasePublish" connectionString="Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User ID=userName@xxxxxxxxx;Password=myPassword" providerName="System.Data.SqlClient" />
</connectionStrings>
Web.Config文件:

    <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User Id=userName@xxxxxxxxx;Password=myPassword" providerName="System.Data.SqlClient" />    
    <add name="IMSEntities" connectionString="metadata=res://*/Models.IMSEntities.csdl|res://*/Models.IMSEntities.ssdl|res://*/Models.IMSEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User Id=userName@xxxxxxxxx;Password=myPassword&quot;" providerName="System.Data.EntityClient" />
    <add name="IMSEntities_DatabasePublish" connectionString="Data Source=tcp:xxxxxxxxx.database.windows.net,1433;Initial Catalog=IMS;User ID=userName@xxxxxxxxx;Password=myPassword" providerName="System.Data.SqlClient" />
</connectionStrings>

谢谢你的帮助

你是否使用Azure门户向你的Web应用程序添加了数据连接?@James,你能详细解释一下你的意思吗?我已在应用程序设置中添加了连接字符串。仍然收到相同的错误您能否在发布的
web.config
中提供连接字符串以及添加到Azure的连接字符串?整个XML标记,当然去掉了敏感部分@James,我已经用Azure和web.config文件中的连接字符串编辑了我的帖子,为什么连接字符串的名称与配置中的任何字符串都不匹配?通常,Azure中的连接字符串部分用于覆盖设置,但目前它不会覆盖设置,因为它的名称与任何设置都不匹配。