ASP.NET MVC 5 - 創(chuàng)建連接字符串(Connection String)并使用SQL Server LocalDB
您創(chuàng)建的MovieDBContext類負責(zé)處理連接到數(shù)據(jù)庫,并將Movie對象映射到數(shù)據(jù)庫記錄的任務(wù)中。你可能會問一個問題,如何指定它將連接到數(shù)據(jù)庫? 實際上,確實沒有指定要使用的數(shù)據(jù)庫,Entity Framework將預(yù)設(shè)值使用的 LocalDB 。 在本節(jié)中,我們將顯式地在Web.config文件中,添加應(yīng)用程序的連接字符串(connection string)。
?
SQL Server Express LocalDB
?
LocalDB 的是一個SQL Server Express輕量級版本的數(shù)據(jù)庫引擎。 它在用戶模式下啟動、執(zhí)行。 LocalDB 的運行在一個特殊的SQL Server Express的執(zhí)行模式,所以允許您使用MDF文件數(shù)據(jù)庫。通常情況下, LocalDB 的數(shù)據(jù)庫文件都保存在web項目的App_Data文件夾下面。
?
注意: 在生產(chǎn)環(huán)境的Web應(yīng)用程序中,我們不推薦您使用SQL Server Express。 尤其,? LocalDB 不應(yīng)該被用于Web應(yīng)用程序的生產(chǎn)環(huán)境,因為它設(shè)計之初不要求使用 IIS 。 然而, LocalDB 的數(shù)據(jù)庫能夠很容易地遷移??到SQL Server或SQL Azure中。
?
備注: 在 Visual Studio 2013 (Visual Studio 2012),? LocalDB ?默認會被安裝.
?
默認的,Entity Framework的看起來命名為為對象上下文類(如本項目MovieDBContext)的相同的一個連接字符串。有關(guān)詳細信息,請參見 SQL Server Connection Strings for ASP.NET Web Applications 。
?
打開應(yīng)用程序根目錄的 Web.config 文件。(不是 View 文件夾下的 Web.config 文件。)打開紅色高亮標(biāo)記的 Web.config 文件。
?
?
找到 <connectionStrings>? :
?
?
在
Web.config
文件中的
<connectionStrings>
內(nèi)添加下面的連接字符串。
?
< 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的,被用于控制可以訪問應(yīng)用程序的成員鑒權(quán)數(shù)據(jù)庫。您已添加的連接字符串 (connection string) 顯示位于App_Data文件夾中的 一個Movie.mdf文件,數(shù)據(jù)庫命名為 Movie.mdf 。 在本教程中,我們將不使用會員數(shù)據(jù)庫有關(guān)會員,認證和安全性的更多信息,請參閱教程:? Deploy a Secure ASP.NET MVC app with Membership, OAuth, and SQL Database to a? Windows Azure Web Site 。
?
連接字符串(connection string)的名稱必須匹配 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連接字符串。 如果沒有指定一個連接字符串,Entity Framework將會在用戶目錄中創(chuàng)建一個LocalDB數(shù)據(jù)庫的 DbContext 類的(如本例中MvcMovie.Models.MovieDBContext)。您也數(shù)據(jù)庫命名為任何你喜歡的東西,只要它具有 .MDF 的后綴。例如,我們可以命名數(shù)據(jù)庫 MyFilms.mdf 。
?
接下來,您將創(chuàng)建一個新的MoviesController類,您可以用它來??展示電影數(shù)據(jù),并允許用戶創(chuàng)建新的影片列表。
?
?
?
ASP.NET MVC 5 - 創(chuàng)建連接字符串(Connection String)并使用SQL Server LocalDB
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
