• ASP.NET MVC 5 入门(05):创建连接字符串并使用 SQL Server LocalDB


    原文:https://docs.microsoft.com/zh-cn/aspnet/mvc/overview/getting-started/introduction/creating-a-connection-string

    作者: Rick Anderson

    ASP.NET MVC 5 入门

    ASP.NET MVC 5 简介

    此教程的更新版本可在此处使用最新版本的Visual Studio 新教程使用ASP.NET CORE MVC,这在本教程中提供了许多改进。

    本教程介绍具有控制器和视图的 ASP.NET Core MVC。 Razor 页面是 ASP.NET Core 2.0 中的一个新选择,它是基于页面的编程模型,可以实现更简单、更高效地生成 Web UI。 建议先尝试 Razor 页面教程,再使用 MVC 版本。 Razor 页面教程:

    • 易于关注。
    • 涵盖更多功能。
    • 是开发新应用程序的首选方法。

    以下教程系列介绍了GitHub上的 ASP.NET MVC: Source

    一、创建连接字符串并使用 SQL Server LocalDB

    你创建的 MovieDBContext 类将处理连接到数据库的任务,并将 Movie 对象映射到数据库记录。 但您可能会问的一个问题是如何指定它将连接到的数据库。 实际上不必指定要使用的数据库,实体框架将默认为使用LocalDB 在本部分中,我们将在应用程序的 web.config文件中显式添加一个连接字符串。

    二、SQL Server Express LocalDB

    LocalDB是按需启动并在用户模式下运行的 SQL Server Express 数据库引擎的轻型版本。 LocalDB 在 SQL Server Express 的特殊执行模式下运行,该模式使您能够将数据库用作 .mdf文件。 通常,LocalDB 数据库文件保存在 web 项目的应用_Data文件夹中。

    不建议在生产 web 应用程序中使用 SQL Server Express。 LocalDB 不应与 web 应用程序一起用于生产,因为它不能与 IIS 一起使用。 但是,可以轻松地将 LocalDB 数据库迁移到 SQL Server 或 SQL Azure。

    在 Visual Studio 2017 中,默认情况下使用 Visual Studio 安装 LocalDB。

    默认情况下,实体框架将查找与对象上下文类(此项目MovieDBContext)相同的连接字符串。 有关详细信息,请参阅SQL Server ASP.NET Web 应用程序的连接字符串

    打开如下所示的应用程序根web.config文件。 (而不是Views文件夹中的web.config 文件。

    查找 <connectionStrings> 元素:

    将以下连接字符串添加到web.config 文件中的 <connectionStrings> 元素。

    <add name="MovieDBContext" 
       connectionString="Data Source=(LocalDb)MSSQLLocalDB;Initial Catalog=aspnet-MvcMovie;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|Movies.mdf" 
       providerName="System.Data.SqlClient" 
    /> 

    下面的示例演示了web.config 文件的一部分,并添加了新的连接字符串:

    <connectionStrings>
      <add name="DefaultConnection" connectionString="Data Source=(LocalDb)MSSQLLocalDB;Initial Catalog=aspnet-MvcMovie-fefdc1f0-bd81-4ce9-b712-93a062e01031;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnet-MvcMovie-fefdc1f0-bd81-4ce9-b712-93a062e01031.mdf" providerName="System.Data.SqlClient" />
      <add name="MovieDBContext" connectionString="Data Source=(LocalDb)MSSQLLocalDB;Initial Catalog=aspnet-MvcMovie;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|Movies.mdf" providerName="System.Data.SqlClient" />
    </connectionStrings> 

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

    连接字符串的名称必须与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 数据库。 只要数据库具有,就可以将其命名为任意名称 .MDF后缀。 例如,我们可以将数据库命名为MyFilms

    接下来,您将生成一个新的 MoviesController 类,该类可用于显示电影数据并允许用户创建新的电影节目表。

  • 相关阅读:
    fake data
    template 的简单使用
    computed what time passage pushed-
    drag And drop
    threeJs(1)
    使用babel
    PHP海补知识(2)-- 复合赋值操作
    PHP海补知识(1)-- 可变变量
    一个裸的Ubuntu系统,搭建LAMP需要配置这些东西
    Ubuntu Server 12.04 U盘启动盘打包
  • 原文地址:https://www.cnblogs.com/springsnow/p/13262998.html
Copyright © 2020-2023  润新知