启用数据库自动迁移

来源:互联网 发布:路由器mac地址过滤功能 编辑:程序博客网 时间:2024/06/09 14:48

第一步:设置配置文件连接字符串(web.config)

     <!--默认连接数据库字符串-->
  <connectionStrings>
    <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcShopping-20140807105724;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-MvcShopping-20140807105724.mdf" />
  </connectionStrings>

第二步:设置我们自己的Context类(如:MvcShoppingContext)红色部分

         public class MvcShoppingContext:DbContext
    {
        public MvcShoppingContext() : base("DefaultConnection")
        {
       
        }
              public DbSet<Product> Products { get; set; }
            }

第三步:找到视图-->其他窗口-->程序包管理控制台(输入:Enable-Migrations)如下:

Enable-Migrations
正在检查上下文的目标是否为现有数据库...
已为项目 MvcShopping 启用 Code First 迁移。

第四部:在Global.asax添加红色部分

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;

namespace MvcShopping
{
   

    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            System.Data.Entity.Database.SetInitializer(
             new System.Data.Entity.MigrateDatabaseToLatestVersion<Models.MvcShoppingContext, Migrations.Configuration>()
            );
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
    }
}

第五部:在生成的Migrations-->Configuration.cs修改红色部分

 AutomaticMigrationsEnabled = true;

 

0 0
原创粉丝点击