之前开发的时候一直用的VS2013,所以数据库也用的LocalDb,这给开发带来很大便利。不过由于开发后还要进行部署,就改用了SQL Server 2012,这里总结下过程。

基本环境:VS2013,EF Code First,SQL Server 2012,Win7.

修改领域层的App.config,就是原来用EF Code First生成数据库的那个项目,用LocalDb的时候,EF节点和连接字符串节点:

<entityFramework>
<defaultConnectionFactory type = "System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value = "v11.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName = "System.Data.SqlClient" type = "System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<add name = "SiaEMS" connectionString = "Data Source=(LocalDb)\v11.0;AttachDbFilename = |DataDirectory|\SiaEMS.mdf;Initial Catalog = SiaEMS;Integrated Security = True" providerName = "System.Data.SqlClient"/>

用SQL Server的话,需要修改这两个节点:

<entityFramework>
<defaultConnectionFactory type = "System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName = "System.Data.SqlClient" type = "System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<add name="SiaEMS"
connectionString="Data Source = .;
Initial Catalog = SiaEMS;
user = sa;
password = ******;
MultipleActiveResultSets = True;
App = EntityFramework"
providerName="System.Data.SqlClient"/>

连接字符串里的内容需要注意,Data Source填数据库的服务器端地址,如果是本机就用.代替;Initial Catalog是要连接的数据库的名字;这里使用SQL Server身份验证,填写user和password;这里没有设置Integrated Security,如果设置为True,将采用Windows身份验证模式,前面填写的u和p不起作用;MultipleActiveResultSets作用是指定多活动的结果集是否与指定的链接相互关联,true代表与指定的链接关联,利用这种对链接的关联方式可以减轻系统的负担。

再修改启动项目的Web.config下的连接字符串,修改和上面的一样即可。


到此,完成需要修改的配置。接下来需要生成数据库,在VS2013中打开工具->NuGet程序包管理器->程序包管理器控制台,默认项目选择领域层的项目,依次使用Enable-Migrations,Add-Migration,Update-Database命令生成数据库文件。

安装SQL Server的时候,由于选择了Windows身份验证登录数据库,所以需要在Microsoft SQL Server Management Studio里修改一下。打开管理器,用Windows身份登陆后,服务器上右键属性->安全性,服务器身份验证里选择SQL Server和Windows身份验证模式,确定退出。点开服务器下的安全性->登录名,右键sa属性,常规中输入密码后确定。本来到这里以为就完成了,可是还需要重启服务,才可以使配置生效,由于没走这一步,部署后浏览网站,一直显示数据库登录失败。右键服务器->重新启动,弹出对话框,点是就可以了。


这样就大功告成了,接下来就是在服务器上走一遍流程就可以了,Go!

关键字:.NET,SQL SERVER,LOCALDB

[.Net MVC] 使用SQL Server数据库代替LocalDb的更多相关文章

  1. 2014-07-30 MVC框架中对SQL Server数据库的访问

    今天是在吾索实习的第16天.我自己主要学习了基于MVC框架的系统的开发时,对SQL Server数据库的相关访问.其步骤如下: 第一步,在Models文件夹中创建一个类,并命名为Movies.cs,如 ...

  2. 在Vs2012 中使用SQL Server 2012 Express LocalDB打开Sqlserver2012数据库

    http://www.cnblogs.com/huangtailang/p/4221164.html 背景:个人电脑中使用的是VS2012,数据库为2008R2,最近需要打开一个SqlServer20 ...

  3. 如何用asp.net MVC框架、highChart库从sql server数据库获取数据动态生成柱状图

    如何用asp.net MVC框架.highChart库从sql server数据库获取数据动态生成柱状图?效果大概是这样的,如图: 请问大侠这个这么实现呢?

  4. ASP.NET MVC与Sql Server交互,把字典数据插入数据库

    在"ASP.NET MVC与Sql Server交互, 插入数据"中,在Controller中拼接sql语句.比如: _db.InsertData("insert int ...

  5. TransactionScope事务处理方法介绍及.NET Core中的注意事项 SQL Server数据库漏洞评估了解一下 预热ASP.NET MVC 的VIEW [AUTOMAPPER]反射自动注册AUTOMAPPER PROFILE

    TransactionScope事务处理方法介绍及.NET Core中的注意事项   作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/10170712.ht ...

  6. .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库

    今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...

  7. SQL Server 2012 Express LocalDB

    微软最新推出的 SQL Server 2012 Express LocalDB 是一种 SQL Server Express 的运行模式,特别适合用在开发环境使用,也内置在 Visual Studio ...

  8. JeeSite如何正确连接SQL SERVER 数据库

    JeeSite如何正确连接SQL SERVER 数据库 jeesite介绍 感谢jeesite项目的作者thinkgem. 没有你我也不会更改这数据源非了恁大的劲,,,,嘻嘻嘻说多了. JeeSite ...

  9. VS 2017 Web项目需要安装Sql Server 2012 Express LocalDB问题

    最近在做mvc5的练习 ,结果到了数据库连接这一阶段就出现了问题,开始我以为<add name="MovieDBContext" connectionString=" ...

随机推荐

  1. Android studio优点及快捷键

    alt+回车 提示错误信息 ctrl+shift+回车 补全代码 ctrl+alt+o 导入包 ctrl+p 查看方法的参数 ctrl+alt+t 可以弹出包围结构的代码提示 例如if android ...

  2. win10 64位安装mysql

    原文地址:http://blog.csdn.net/kingyumao/article/details/51925795

  3. 2016 Mac OS 10.11 CocoaPods的安装问题

    CocoaPods的安装问题: 1.首先用淘宝的Ruby镜像来访问CocoaPods,打开终端输入以下命令: (1)gem sources --remove  https://rubygems.org ...

  4. android 五子棋开发

    两天完成基本功能,再对其进行细节bug优化,本小白的思路. 思路: 1.用canvas绘制棋盘:得到手机的分辨率.棋盘大小为19*19.将手机宽屏分为21份,取中间19份为棋盘.上下空白位置为按钮功能 ...

  5. MinGW安装和使用总结

    0.前言 最近对开源编译平台和编译器产生了兴趣,借博客平台总结一些东西(包括minGW,eclipse,sourcery和GDB调试等内容).总感觉时间一长某些东西自己都会忘记,过段时间回头看看自己的 ...

  6. 【转载】Android Studio 设置内存大小及原理

    http://www.cnblogs.com/justinzhang/p/4274985.html http://tsroad.lofter.com/post/376316_69363ae Andro ...

  7. 【转】CppUnit使用简介

    以下内容来自:http://www.cnblogs.com/wishma/archive/2008/08/01/1258370.html 1. 简介 CppUnit 是个基于 LGPL 的开源项目,最 ...

  8. 一个GCC4.6.3的奇妙问题的糊涂解决方案

    因为工作中需要OpenCV,又不想用Windows,所以我就在Linux下编译安装OpenCV了.一开始,由于我的计算机不能安装ubuntu12.04,所以我安装了ubuntu13.04,opencv ...

  9. iOS 应用开发中的断点续传实践总结

    断点续传概述 断点续传就是从文件上次中断的地方开始重新下载或上传数据,而不是从文件开头.(本文的断点续传仅涉及下载,上传不在讨论之内)当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者 ...

  10. iOS开发——UI篇OC篇&UICollectionView详解+实例

    UICollectionView详解+实例 实现步骤: 一.新建两个类 1.继承自UIScrollView的子类,比如HMWaterflowView * 瀑布流显示控件,用来显示所有的瀑布流数据 2. ...