在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1. 创建连接串连接本地SQLServer数据库上节讲到MovieDBContext类,这个类的作用是连接数据库并将Movie对象迁移到数据库记录中。不过你会问一个问题:如何知道这个对象将连接哪个数据库呢?事实是你并没有指定所用的数据库,EF框架将默认使用本地数据库(LoaclDB).在这一章节中我们将给这个应用程序的web.config文件中添加一个连接字符串。 2. SQL Server自带的Express版的LocalDBLocalDB是在需求启动并运行在用户模式下的一个轻量级版本的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>元素中. 1 <add name="MovieDBContext" 2 connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" 3 providerName="System.Data.SqlClient" 4 /> 下面的例子中显示了部分Web.config文件中新添加的连接字符串: 1 <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" 4 />
注意:连接串的名字必须和DbContext类的名字相匹配。 1 using System; 2 using System.Data.Entity; 3 4 namespace MvcMovie.Models 5 { 6 public class Movie 7 { 8 public int ID { get; set; } 9 public string Title { get; set; } 10 public DateTime ReleaseDate { get; set; } 11 public string Genre { get; set; } 12 public decimal Price { get; set; } 13 } 14 15 public class MovieDBContext : DbContext 16 { 17 public DbSet<Movie> Movies { get; set; } 18 } 19 } 实际上你没有添加MovieDBContext的连接串。如果你没有指定一个连接串,EF框架将在用户的直接目录用DbContex类的全名(此例是MvcMovie.Models.MOvieDBContext)创建一个LocalDB数据库。当然你可以命名任何你喜欢的数据库名,前提是数据库名字的后缀是.MDF.例如:我们可以命名数据库为MyFilms.mdf. 接下来,你可以编译这个MoviesController类了,用来显示新的 movie数据和让你创建新的movie列表了。 六、 从Controller中访问模板数据(ASP.NET MVC5 系列) |
请发表评论