ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

时间:2021-10-17 15:52:41

创建的连接字符串和使用 SQL 服务器 LocalDB

您创建的MovieDBContext类处理连接到数据库和Movie对象映射到数据库记录的任务。不过,你可能会问,一个问题是如何指定它将连接到的数据库。你其实不必指定要使用的数据库,Entity Framework将默认使用LocalDB在本节中,我们会显式添加应用程序的Web.config文件中的连接字符串。

SQL 服务器快递 LocalDB

LocalDB是轻量级的版本的 SQL Server 表示数据库引擎,按需启动和运行在用户模式下。LocalDB 运行中的 SQL Server Express 使您能够使用数据库的.mdf文件作为特殊的执行模式。通常情况下,LocalDB 数据库文件保存在 web 项目的App_Data文件夹中。

SQL Server Express 不推荐在生产 web 应用程序中使用。LocalDB 尤其不应该被用于生产一个 web 应用程序因为它设计出来不是和IIS一起工作。然而,LocalDB 数据库可以容易地迁移到 SQL Server 或 SQL Azure。

在 Visual Studio 2013(以及 2012)中,LocalDB 默认随 Visual Studio 一起安装。

默认情况下,实体框架查找命名对象上下文类 (此项目MovieDBContext ) 相同的连接字符串。有关更多信息,请参见ASP.NET Web 应用程序的 SQL 服务器连接字符串.

打开应用程序根Web.config文件如下所示。(不是Web.config文件在视图文件夹中。)

ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

查找<connectionStrings>元素︰

ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

将下面的连接字符串添加到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>
   
<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" />
   
<add name="MovieDBContext"    connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient"
/>

两个连接字符串都非常相似。第一个连接字符串被命名为DefaultConnection ,用于控制可以访问该应用程序的成员资格数据库。您已经添加的连接字符串指定一个名为Movie.mdf位于App_Data文件夹中的 LocalDB 数据库。我们不会使用成员资格数据库在本教程中,对成员资格、 身份验证和安全的详细信息,请参阅我的教程创建一个 ASP.NET MVC 应用程序身份验证和 SQL 数据库,并将部署到 Azure 应用程序服务.

连接字符串的名称必须与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 连接字符串。如果你不指定一个连接字符串,实体框架将在用户目录中使用DbContext类 (在这个案例MvcMovie.Models.MovieDBContext) 的完全限定名创建一个 LocalDB 数据库。你可以命名数据库任何你喜欢的东西,只要它有这样做。中密度纤维板后缀。例如,我们可以命名数据库MyFilms.mdf.

接下来,您将构建一个新的MoviesController类,您可以使用显示电影数据并允许用户创建新的电影列表。

 

-----------------------------------------------------------------------------------------

《ASP.NET MVC 5 入门指南》12篇文章汇总如下:

1. ASP.NET MVC 5 - 入门

2. ASP.NET MVC 5 - 控制器

3. ASP.NET MVC 5 - 视图

4. ASP.NET MVC 5 - 添加一个模型

5. ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB

6. ASP.NET MVC 5 - 从控制器访问数据模型

7. ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

8. ASP.NET MVC 5 - 将数据从控制器传递给视图

9. ASP.NET MVC 5 - 添加搜索

10. ASP.NET MVC 5 - 给电影表和模型添加新字段

11. ASP.NET MVC 5 - 给数据模型添加校验器

12. ASP.NET MVC 5 - 查询Details和Delete方法

希望这些文章对感兴趣的朋友有所帮助