ASP.NET MVC 5 學習教程:創建連接字符串


起飛網 ASP.NET MVC 5 學習教程目錄:

在上一節中,我們創建了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文件的位置

image

打開文件后,找到 connectionString 節點:

圖2:connectionString節點

image

在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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM