使用 Entity Framework 从 MVC 应用程序连接到现有的 Azure 数据库

Connecting to an Existing Azure Database from an MVC application using Entity Framework

所以我已经使用 Azure 移动服务发布了一个应用程序,我现在想要一个 MVC 网站查看此移动服务的基础数据库,这样管理员就可以修改表等,而无需直接登录到Azure 门户。

我已将我的数据库连接字符串复制到 MVC 应用程序中,但是每次我发布它时,它都会在云中创建它自己的单独数据库,而不是查看我放在适当配置文件中的现有数据库。

有谁知道如何解决这个问题,或者我可以从哪里开始寻找它来简单地连接到现有数据库?由于现有数据库是由我创建 Azure 移动服务生成的,所以我不确定这是否是导致我出现问题的原因?

干杯,

您将需要以下内容。

将此添加到您的 MVC 应用程序中的 Web.config 文件。

<connectionStrings>
    <add name="connection" connectionString="Data Source=server address;Initial Catalog=Database Name;User Id=****;Password=****;"/>
  </connectionStrings>

在您的上下文文件中:

public ContextRepository() : base(ConfigurationManager.ConnectionStrings["connection"].ConnectionString)
    {

    }

    public DbSet<EntityName> Entities{ get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.HasDefaultSchema("dbo");

        modelBuilder.Entity<EntityName>().ToTable("EntityTable");
    }

基本上因为您首先编写代码,所以它可能会尝试创建自己的数据库,因为它不知道如何将实体映射到表。

看看 Fluent API。 https://msdn.microsoft.com/en-gb/data/jj591617.aspx