使用Code First 迁移发布asp.net mvc 程序

通过Code First 迁移发布asp.net mvc应用程序,与在visual studio 程序包控制器管理台中运行Add-Migration ,Update-Database 一致。

在发布的程序的Web.Config 配置文件数据库初始化器databaseInitializer 为 MigrateDatabaseToLatestVersion。

如果目标服务器数据库不存在,创建数据库,再运行种子方法进行填充。如果数据库存在,则使数据库更新至与模型一致,再运行种子方法进行填充数据库。

一、在需要发布的项目 右键 属性-- 发布。

二、命名部署配置文件,选择发布方法,可以选择WebDeploy ,就是直接从vs中发布到IIS服务器。使用Code First 迁移的方式的发布系统使用的是Deploy方式。  也可以选择本地文件系统,先发布到本地,再将文件拷入服务器。

三、在 连接 配置中输入 服务器(如 本机http://localhost或http://IP地址)、站点名称(如ContosoWebSite)、目标URL(如 http://localhost)(就是应用程序 发布到服务器完成后立即启动的方法或者页面。 然后点 验证连接。

四、在设置 中,数据库 下面输入 数据库连接字符串,如Data Source=(Local);Initial Catalog=ContosoUniversity20151107;IntegratedSecurity=True,( 发布以后,数据库连接字符串将写入 发布的网站程序的Web.config文件。) 

勾选 执行CodeFirst迁移(在应用程序启动时),此勾选 将在发布的网站程序中 的配置文件Web.Config 中写入 指定 数据库初始化器 databaseInitializer 为

 

MigrateDatabaseToLatestVersion。完成在应用程序启动的时候,执行CodeFirst迁移,也就是执行UPSERT操作,如果目标服务器数据库不存在,创建数据库,并运行种子方法进行填充。如果数据库存在,则使数据库更新至与模型一致。

<contexts>

    <context type="ContosoUniversity.DAL.SchoolContext,ContosoUniversity">

    <databaseInitializer type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[[ContosoUniversity.DAL.SchoolContext,ContosoUniversity], [ContosoUniversity.Migrations.Configuration,ContosoUniversity]], EntityFramework, PublicKeyToken=b77a5c561934e089">

    <parameters>

    <parameter value="SchoolContext_DatabasePublish" />

    </parameters>

    </databaseInitializer>

</context>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值