Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Azure移动服务-实体框架代码首次删除并创建数据库不工作_C#_Entity Framework_Azure_Ef Code First_Azure Mobile Services - Fatal编程技术网

C# Azure移动服务-实体框架代码首次删除并创建数据库不工作

C# Azure移动服务-实体框架代码首次删除并创建数据库不工作,c#,entity-framework,azure,ef-code-first,azure-mobile-services,C#,Entity Framework,Azure,Ef Code First,Azure Mobile Services,问题: 在code first Mobile Services项目中更改模型,然后发布到Azure会导致以下错误: System.Data.SqlClient.SqlException(0x80131904):无法打开登录请求的数据库“master”。登录失败。 用户“xxxxxxxxxxxx”登录失败 复制步骤: Visual Studio Community 2015新项目->Web应用程序->移动 服务 直接发布到Azure(创建新的移动服务-为db选择最便宜的层) 派提琴手去 接收20

问题: 在code first Mobile Services项目中更改模型,然后发布到Azure会导致以下错误:

System.Data.SqlClient.SqlException(0x80131904):无法打开登录请求的数据库“master”。登录失败。 用户“xxxxxxxxxxxx”登录失败

复制步骤:

  • Visual Studio Community 2015新项目->Web应用程序->移动 服务
  • 直接发布到Azure(创建新的移动服务-为db选择最便宜的层)
  • 派提琴手去
  • 接收200个OK,其中有2个项目是默认项目植入db的
  • 对模型做一个小更改(例如,将以下内容添加到ToDoItem类) 公共字符串已更改{get;set;}
  • 将更改发布到Azure
  • 派提琴手去
  • 这一次接收到500个内部服务器错误,我在开始时引用的错误在Azure中的移动服务日志中出现两次
我已经检查过了,数据库仍然存在,没有对模型进行更改,所以我假设Azure由于某种原因无法删除它

在默认移动服务项目中,在WebApiConfig类中,数据库初始值设定项被设置为继承DropCreateDatabaseIfModelChanges的类型。那么Azure不应该删除数据库并重新创建它吗?我在我的一个定制项目中遇到了这个问题,所以用默认的移动服务尝试了这个测试,并且能够重现它,这个默认的站点至少应该是开箱即用的吗

我需要做什么才能允许Azure删除数据库?错误消息表明它无法登录,但我们已经证明了这一点,因为MobileServiceInitializer类中的Seed方法在服务首次发布时被明确调用(因为我们能够在fiddler发送的第一个GET请求中返回2个ToDoItems)


有什么想法吗?任何帮助都将不胜感激,谢谢。

在提交本文后立即找到答案,典型


Azure使用的db用户没有删除数据库的权限,因此需要将使用的初始值设定项类型从DropCreateDatabaseIfModelChanges更改为ClearDatabaseSchemaIfModelChanges。这会在每次部署时很好地更新模式

在提交此内容后立即找到答案,典型

Azure使用的db用户没有删除数据库的权限,因此需要将使用的初始值设定项类型从DropCreateDatabaseIfModelChanges更改为ClearDatabaseSchemaIfModelChanges。这会在每次部署时很好地更新模式