ASP.NET MVC 5 学习教程:创建连接字符串
起飞网 ASP.NET MVC 5 学习教程目录:
- 添加控制器
- 添加视图
- 修改视图和布局页
- 控制器传递数据给视图
- 添加模型
- 创建连接字符串
- 通过控制器访问模型的数据
- 生成的代码详解
- 使用 SQL Server LocalDB
- Edit方法和Edit视图详解
- 添加查询
- Entity Framework 数据迁移之添加字段
- 添加验证
- Details 和 Delete 方法详解
在上一节中,我们创建了MovieDBContext 类来连接数据库、处理Movie 对象和数据库记录的映射。你可能会问我们到底使用了哪个数据库?其实,在我们没有指定数据库的时候,Entity Framework 默认使用LocalDB 。在本节中我们将介绍如何在Web.config 文件中添加一个数据库连接。
SQL Server Express LocalDB
LocalDB 是SQL Server Express 数据库引擎的轻量级版本,LocalDB 运行在SQL Server Express 的特殊执行模式下,允许你使用数据库文件(例如 .mdf 文件)。通常情况下,LocalDB 数据库文件放在解决方案的 App_Data 文件夹下。
SQL Server Express 是不推荐用在 web 应用程序产品中的,其实准确的说,LocalDB 也不能用在 web 应用程序产品中,因为它设计的时候就没考虑和 IIS 一起使用。然而,一个LocalDB数据库可以很简单的迁移到SQL Server 或 SQL Azure。
在Visual Studio 2013(或 2012)中,Visual Studio 默认安装了LocalDB。
默认情况下,Entity Framework 会查找和对象上下文类同名的数据库连接(在这个项目中是 MovieDBContext)。
打开应用程序根目录的 Web.config 文件(不是在Views 目录中的Web.config)。文件位置如下图:
图1:Web.config文件的位置

打开文件后,找到 connectionString 节点:
图2:connectionString节点

在connectionString节点下面添加如下连接字符串:
代码清单1:MovieDBContext 连接字符串
<add name="MovieDBContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
下面是添加了MovieDBContext连接字符串后完整的connectionString 节点代码:
代码清单2:完整的connectionString代码
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MvcMovie-20130629121520.mdf;Initial Catalog=aspnet-MvcMovie-20130629121520;Integrated Security=True"
providerName="System.Data.SqlClient" />
<
add name="MovieDBContext" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient"
/>
</connectionStrings>
这两个连接字符串很相似,第一个的名字是DefaultConnection,是membership用来控制谁访问应用程序的数据库。我们添加的连接字符串指定了LocalDB 数据库名字是 Movie.mdf ,放在App_Data 文件夹。在我们的教程中没有用到membership数据库,关于membership、authentication 和 security,我们会在以后的教程中进行介绍。
数据库连接字符串的名字必须和 DbContext 类同名。
代码清单3:Movie.cs
using System;
using System.Data.Entity; namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
} public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
事实上,你不需要添加 MovieDBContext 连接字符串,如果你没有明确指定连接字符串,Entity Framework 会在用户目录创建一个 LocalDB 数据库,名字就是 DbContext 类的全名(在本示例中文件名是 MvcMovie.Models.MovieDBContext)。你可以为数据库指定任何你喜欢的名字,只要它有 MDF 后缀就行,例如,我们可以用 MyFilms.mdf 来命名。
接下来,我们要创建一个新的 MoviesController 类,用来显示电影数据和让用户来创建新的电影列表。
本文转自起飞网,原文地址:http://www.qeefee.com/mvc/mvc-5-creating-a-connection-string
如果认为此文对您有帮助,别忘了支持一下哦!
ASP.NET MVC 5 学习教程:创建连接字符串的更多相关文章
- ASP.NET MVC 5 学习教程:快速入门
起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Se ...
- ASP.NET MVC 5 学习教程:添加验证
原文 ASP.NET MVC 5 学习教程:添加验证 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
- ASP.NET MVC 5 学习教程:数据迁移之添加字段
原文 ASP.NET MVC 5 学习教程:数据迁移之添加字段 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符 ...
- ASP.NET MVC 5 学习教程:添加查询
原文 ASP.NET MVC 5 学习教程:添加查询 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
- ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解
原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...
- ASP.NET MVC 5 学习教程:使用 SQL Server LocalDB
原文 ASP.NET MVC 5 学习教程:使用 SQL Server LocalDB 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 ...
- ASP.NET MVC 5 学习教程:生成的代码详解
原文 ASP.NET MVC 5 学习教程:生成的代码详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...
- ASP.NET MVC 5 学习教程:通过控制器访问模型的数据
原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连 ...
- ASP.NET MVC 5 学习教程:控制器传递数据给视图
原文 ASP.NET MVC 5 学习教程:控制器传递数据给视图 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字 ...
随机推荐
- night Mode 夜间模式css
*,*:before,*:after,html[mode='nightmode'] * { color: #61615f !important; border-color: #212a32 !impo ...
- Qt 继承QWidget setstylesheet解决
void myMainWidget::paintEvent(QPaintEvent * e) { QStyleOption opt; opt.init(this); QPainter p(this); ...
- systemd.service 中文手册
版权声明 本文译者是一位开源理念的坚定支持者,所以本文虽然不是软件,但是遵照开源的精神发布. 无担保:本文译者不保证译文内容准确无误,亦不承担任何由于使用此文档所导致的损失. 自由使用:任何人都可以自 ...
- 1.Getting Started
Elasticsearch 是一个高度扩展的开源的全文搜索和分析引擎,它允许你存储,搜索和分析大量的数据和几乎实时. 它通常用于底层的存储.技术,提供应用实现负载的搜索功能和需求. 这里有一些使用的示 ...
- TMT行业分析师
诚聘英才 - 传媒梦工场 TMT行业分析师 工作经验: 2年以上 发布日期: 2013-01-04 最低学历: 本科 管理经验: 否 工作性质: 全职 招聘人数: 1人 职位类别: 金融 ...
- Gimp制作圆角透明图片
用蒙版制作圆角透明图片,步骤如下: 1,用Gimp(2.8版本)打开图片 2,在图层窗口右键当前图层创建蒙版 3,选择蒙版类型黑色(全透明) 4,结果如下 5,用圆角矩形选择工具选择图片,设置圆角半径 ...
- tomcat的webappclassloader中一个奇怪的异常信息
假设一个应用抛出大量的Class not found信息,一般你会怀疑包冲突.但是tomcat的webappclassloader却有这种问题: 假设一个应用公布出现故障, webappclasslo ...
- http协议与http代理
TCP/IP协议族 TCP/IP(Transmission Control Protocol/InternetProtocol.传输控制协议/网际协议)是用于计算机通信的一个协议族. TCP/IP协议 ...
- javascripts小结
1 NAN-isNaN():判断是否数值 2 数值转换 Number()-任何数据类型,parseInt(),parseFloat()-字符串 3数组转字符串 var a=["red&quo ...
- floyed算法
Floyed算法(实际是动态规划问题) 问题:权值矩阵matrix[i][j]表示i到j的距离,如果没有路径则为无穷 求出权值矩阵中任意两点间的最短距离 分析:对于每一对定点u,v看是否存在一个点w使 ...