EF6 学习笔记:数据库迁移及部署
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EF6 学习笔记:数据库迁移及部署相关的知识,希望对你有一定的参考价值。
EF6学习笔记总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理)
原文地址:Code First Migrations and Deployment
原文主要讲两部分:开发环境下数据库迁移到其他数据库服务器;以及在Azure上如何部署应用;
原文前面讲一堆内容,主要就是说数据库在开发过程中,如果数据模型经常需要调整,那么数据库每次都删除重建有点不太现实;尤其是对于已部署的正式环境,需要的仅仅是数据库升级,而不可能直接Drop掉,再重新Create.
所以,需要启用EF的数据迁移功能。
原文为了演示效果更好,就直接演示了迁移升级到一个全新的数据库中:
第1步:把Web.config文件中 entityFramework节点下 contexts注释掉:
<entityFramework> <!--<contexts> <context type="EFTest.DAL.SchoolContext, EFTest"> <databaseInitializer type="EFTest.DAL.SchoolInitializer, EFTest" /> </context> </contexts>--> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="mssqllocaldb" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework>
第2步:数据库连接字符串中,数据库名改个名字,比如EFTest2
<connectionStrings> <add name="SchoolContext" connectionString="Data Source=(localdb)\ProjectsV13;Initial Catalog=EFTest2;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False;" providerName="System.Data.SqlClient" /> </connectionStrings>
第3步:打开PM控制台:
第4步:
以上是关于EF6 学习笔记:数据库迁移及部署的主要内容,如果未能解决你的问题,请参考以下文章