C# 阻止实体框架重新创建数据库,但改用现有数据库

C# 阻止实体框架重新创建数据库,但改用现有数据库,c#,asp.net-mvc,database,entity-framework,C#,Asp.net Mvc,Database,Entity Framework,你好 到目前为止,我理解EF试图让开发人员以代码优先的模式工作。目前我的设置有问题,因为EF想创建一个数据库,但被拒绝了。我已经创建了一个数据库,并将生成的数据库连接字符串更改为我希望它连接的位置,以及使用哪个数据库 在我的职业生涯中,我还没有广泛使用EF,但我发现通过ADO.NET方法对EF的需求越来越大。我决定试试看。以下是我所拥有的: 连接字符串 错误: 现在让我困惑的是——当EF打算擦除并重新创建数据库时,您如何使用它?我是不是遗漏了什么?我希望从数据库中的实际表以及其他CRUD操作中读

你好

到目前为止,我理解EF试图让开发人员以代码优先的模式工作。目前我的设置有问题,因为EF想创建一个数据库,但被拒绝了。我已经创建了一个数据库,并将生成的数据库连接字符串更改为我希望它连接的位置,以及使用哪个数据库

在我的职业生涯中,我还没有广泛使用EF,但我发现通过ADO.NET方法对EF的需求越来越大。我决定试试看。以下是我所拥有的:

连接字符串

错误:


现在让我困惑的是——当EF打算擦除并重新创建数据库时,您如何使用它?我是不是遗漏了什么?我希望从数据库中的实际表以及其他CRUD操作中读取数据,而不是让它在每次运行应用程序时都重新创建数据。

查看MigratedatabaseToLateStVersion如果您有一个现有数据库,并希望使用代码优先的方法,您可以使用“数据库中的代码优先”来生成所需的类和派生的上下文对象。请参阅,我们将对此进行查看,谢谢。将此代码放在上下文类的静态构造函数中。Database.SetInitializernull;
<add name="DefaultConnection" connectionString="Data Source=EON-PC\2008;Initial Catalog=Experimental;Integrated Security=true;" providerName="System.Data.SqlClient" />
namespace EFExperiment.Models
{
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    using System.Data.Entity;

    [Table("stores")]
    public class Stores
    {
        [Key]
        public string Id { get; set; }

        public string StoreName { get; set; }

        public string AdminEmail { get; set; }

        public string Url { get; set; }
    }

    public class StoreDbContext : DbContext
    {
        public StoreDbContext()
        {
            //Database.SetInitializer<StoreDbContext>(null); //Tried this - also failed. It didn't try to create a database here
        }

        public DbSet<Stores> Stores { get; set; }
    }
}
namespace EFExperiment.Controllers
{
    using EFExperiment.Models;
    using System.Linq;
    using System.Web.Mvc;

    public class StoresController : Controller
    {
        private StoreDbContext db = new StoreDbContext();

        public ActionResult Index()
        {
            return View(db.Stores.ToList());
        }
    }
}
CREATE DATABASE permission denied in database 'master'.