1. 创建连接串连接本地SQLServer数据库

上节讲到MovieDBContext类,这个类的作用是连接数据库并将Movie对象迁移到数据库记录中。不过你会问一个问题:如何知道这个对象将连接哪个数据库呢?事实是你并没有指定所用的数据库,EF框架将默认使用本地数据库(LoaclDB).在这一章节中我们将给这个应用程序的web.config文件中添加一个连接字符串。

2. SQL Server自带的Express版的LocalDB

LocalDB是在需求启动并运行在用户模式下的一个轻量级版本的SQL Server Express数据库引擎。LocalDB运行在能够使你用.mdf为后缀的数据库文件工作的SQL Server Express的特别的执行模式。通常情况下,LocalDB的数据库文件在Web项目的App_Data文件夹下。

SQL Server Express在真实的Web应用程序开发过程中并不推荐使用。LocalDB的流行并不是因为其在Web应用程序开发的使用,而是因为它的工作设计不依赖于IIS。此外,LocalDB数据库也很容易的迁移到SQL Server或者SQL Azure上。

在VS2013(和VS2012)中,LocalDB是默认安装到Visual Studio中的。

在默认的情况下,EF框架将查找一个与context类(此例是MovieDBContext)同名的连接字符串。想了解更多的信息,请查看ASP.NET应用程序的SQL Server连接串

打开这个应用程序末尾的Web.config文件(注意:不是Views文件下的Web.config),如下所示:

找到这个<connectionStrings>元素:

Web.config文件中添加下面的连接字符串到<connectionStrings>元素中.

 <add name="MovieDBContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"
/>

下面的例子中显示了部分Web.config文件中新添加的连接字符串:

 <connectionStrings>
2 <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MvcMovie-20130603030321.mdf;Initial Catalog=aspnet-MvcMovie-20130603030321;Integrated Security=True" providerName="System.Data.SqlClient" />
3 <add name="MovieDBContext" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient"
/>

这两个连接字符串非常相似。第一个连接串叫做DefaultConnection被用于成员数据库,用来控制合法用户进入该应用程序。新添加的连接串在App_Data文件夹下指定了一个命叫Movie.mdf的LocalDB数据库。在这本教程中我们并没有使用成员数据库,想了解更多关心成员,授权和安全性的信息,请查询Deploy a Secure ASP.NET MVC app with Membership, OAuth, and SQL Database to a  Windows Azure Web Site

注意:连接串的名字必须和DbContext类的名字相匹配。

 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的连接串。如果你没有指定一个连接串,EF框架将在用户的直接目录用DbContex类的全名(此例是MvcMovie.Models.MOvieDBContext)创建一个LocalDB数据库。当然你可以命名任何你喜欢的数据库名,前提是数据库名字的后缀是.MDF.例如:我们可以命名数据库为MyFilms.mdf.

接下来,你可以编译这个MoviesController类了,用来显示新的 movie数据和让你创建新的movie列表了。

六、 从Controller中访问模板数据(ASP.NET MVC5 系列)

五、 创建连接串连接本地数据库(ASP.NET MVC5 系列)的更多相关文章

  1. 四、 添加模型Model(ASP.NET MVC5 系列)

    在这一章节中我们将添加一些classes类来管理数据库中的movies.这些classes类就是ASP.NET MVC应用程序中的"model". 我们将用.NET框架中的数据访问 ...

  2. [Asp.net MVC]Asp.net MVC5系列——在模型中添加验证规则

    目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5 ...

  3. [Asp.net MVC]Asp.net MVC5系列——添加模型

    目录 概述 添加模型 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列——添加视图 概述 在本节中我们将追加 ...

  4. Asp.net MVC]Asp.net MVC5系列——在模型中添加

    目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5 ...

  5. [Asp.net MVC]Asp.net MVC5系列——添加视图

    目录 系列文章 概述 添加视图 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 概述 在这一部分我们添加一个新的控制器HelloWorldController类, ...

  6. [Asp.net MVC]Asp.net MVC5系列——从控制器访问模型中的数据

    目录 概述 从控制器访问模型中的数据 强类型模型与@model关键字 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net M ...

  7. [Asp.net MVC]Asp.net MVC5系列——添加数据

    目录 概述 显示添加数据时所用表单 处理HTTP-POST 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列 ...

  8. 三、 添加视图View(ASP.NET MVC5 系列)

    在这一章节我们可以修改HelloWorldController类,通过使用视图模板来封装处理产生给客户端的HTML响应. 我们将使用Razor View engine来创建视图文件.基于Razor的视 ...

  9. 二、 添加控制器Controller(ASP.NET MVC5 系列)

    MVC是Model-View-Controller的简写.MVC是一种开发良好架构,可测试,易维护应用程序的设计模式.据于MVC的应用程序应该包含: Models: 是呈现应用程序数据和使用验证逻辑给 ...

随机推荐

  1. Android™ 1.5 android.R.drawable Icon Resources

    图标一览表: http://www.darshancomputing.com/android/1.5-drawables.html 官  方  API: http://developer.androi ...

  2. Script error.全面解析

    一些用户向我们反馈,Fundebug的[JavaScript](https://docs.fundebug.com/notifier/javascript/)监控插件抓到了很多**Script err ...

  3. Android ShellUtils

    Android中执行Shell命令的工具类 public class ShellUtils { public static final String COMMAND_SU = "su&quo ...

  4. 前端开发框架简介:angular和react

    作者:vienwu react是facebook推出一个用来构建用户界面的js库.官方介绍的三大特性如下: just the ui 把react只当作一个ui组件就好,等同于传统mvc中的view. ...

  5. 常用 SQL 语句使用的总结

    --SQL 语句为表添加字段并设置默认值 alter table Student --表名 add fee --添加的字段名 int --字段类型 not null --是否为空 --默认值 --修改 ...

  6. 苹果新手MacBook 目录认识

    最近,开发平台从windows转型到mac. 刚开始还真不适应 不过使用了几天之后 还是很不错的. 那么我们来认识一下目录,用过linux的应该很好适应unix的mac MAC是Unix系统 和Win ...

  7. CSS清除float浮动

    一.浮动产生原因   -   TOP 一般浮动是什么情况呢?一般是一个盒子里使用了CSS float浮动属性,导致父级对象盒子不能被撑开,这样CSS float浮动就产生了. 本来两个黑色对象盒子是在 ...

  8. 关于用jQuery的animate方法实现的动画在IE中失效的原因以及解决方法

    这几天在学jQuery,本身还只是一个新手,写了一个简单的动画--圆形头像的缩放.本身是用Firefox进行调试的,一切进行的很顺利,缩放可以按照预期执行,结果拿到IE上去之后,发现缩放动画失效了.后 ...

  9. Xamarin自定义布局系列——支持无限滚动的自动轮播视图CarouselView

    背景简述 自动轮播视图(CarouselView)在现在App中的地位不言而喻,绝大多数的App中都有类似的视图,无论是WebApp还是Native App.在安卓.iOS以及Windows(UWP) ...

  10. 使用Express开发个人网站(一)

    Express,基于Node.js平台,快速.开放.极简的 web 开发框架. Node的出现,让js有了运行在服务器端的可能,基于此的Express,可以快速,简单的搭建起一个服务器与个人网站. 安 ...