部署
当应用程序使用EF后,可以通过Visual Studio来进行部署,即将数据库部署到真实环境中,可以作为正式上线使用环境。在进行部署前,我们也需要先做一些先前准备工作,服务器server2008、数据库SQLServer2008、编程环境Visual Studio 2013、EF6.0。
部署前提准备条件
- 数据库远程访问
当你是部署的服务器是在远端,与你开发环境在同一个网络内(即两台机器是可以通讯的),这个时候就可以通过开发机器远程访问服务器的数据库端。需要在数据库连接字符串中的用户中启用远程连接,如使用sa,则用sa登陆数据,单击右键选择服务器属性,选择连接选项,然后就可以看到远程服务器连接一项,将”允许远程连接到此服务器”一项打钩。
- 开启TCP/IP访问服务
当你安装了SQLSERVER的客户端管理程序,则可以在目录下选择配置工具中的Sql Server Configuration Manager工具,然后分别检查SQLServer服务、SQLServer网络配置、SQLNative Client配置三项内容。SQLServer服务是保证所需的服务已经开启;SQLServer网络配置中分别针对MSSQLSERVER和SQLEXpress版本,如果你选择一种协议就需要开启该协议下的TCP/IP;SQLNative Client为客户端访问配置,也是需要在客户端协议中开启TCP/IP。如下图:
这样开启之后,就能保证你的数据库配置可以通过IP地址来访问,即数据库连接字符串中可以使用IP地址了。
- 防火墙设置
若你在IIS中部署网站设置的不是默认的80端口,使用的是其他端口,则需要在防火墙中设置端口入站规则,允许外网的人访问该服务器的指定端口,否则你的程序虽然能在服务器本地访问,但是外网是无法访问。如:
部署过程
当前提准备条件都设置好了,就可以用VS来进行部署数据库了。具体步骤分为以下几个:
- 选择程序包管理控制器控制台
在VS中的工具选项卡中选择NuGet程序包管理器,再选择程序包管理器控制台,如:
- 允许迁移操作
在控制台中输入Enable-Migrations命令按回车,该命令表示该项目允许迁移,且它会检查当前数据库连接字符串是否能够连接到数据库,同时会在项目中生成一个Migrations文件夹存放迁移部署的文件。当然你若并不是第一次创建迁移,就不需要该命令,直接进入下一个命令add,如图:
- 添加数据库更改
当允许迁移命令执行成功或已经存在迁移文件夹后,就可以在控制台输入add-Migrations命令,该命令表示项目中添加创建数据库的脚本文件,以及一些初始化文件项目,且文件时根据时间命名的,如201410080804025_ZDSJ.cs,文件内是关于映射到数据库的代码。
- 更新数据库指定环境