2014-07-30 MVC架構中對SQL Server資料庫的訪問

來源:互聯網
上載者:User

標籤:style   blog   http   color   使用   檔案   io   資料   

  今天是在吾索實習的第16天。我自己主要學習了基於MVC架構的系統的開發時,對SQL Server資料庫的相關訪問。其步驟如下:

  第一步,在Models檔案夾中建立一個類,並命名為Movies.cs,1所示:

  

圖1  

  第二步,在上述Movies.cs檔案中的namespace MvcTest.Models{}中輸入如下代碼:

  

 1     public class Movie 2     { 3         public int ID { get; set; } 4         public string Title { get; set; } 5         public DateTime ReleaseDate { get; set; } 6         public string Genre { get; set; } 7         public decimal Price { get; set; } 8     } 9 10     public class MovieDBContext : DbContext11     {12         public DbSet<Movie> Movies { get; set; }13     }

  其中,Movie對象中的每個執行個體對應資料庫表Movies的每一行,每個屬性對應資料庫表Movies的相應欄位。而MovieDBContext是EF(Entity Framework)的資料庫上下文(即資料庫環境),是由基類DbContext派生出來的。

  第三步,在項目根目錄下的Web.config中<connectionStrings></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  /> 

  其中,|DataDirectory|代表項目根目錄下的App_Data檔案夾,當此檔案夾不存在Movies.mdf時,它會自動產生。而System.Data.SQLClient說明使用的是SQL Server的資料庫。

  第四步,在Controllers檔案夾中添加一個控制器MoviesController,控制器的模板、模型類、資料內容類2所示:

圖2

  添加後,MVC將自動為你自動建立 CRUD (建立、 讀取、 更新和刪除) 的操作方法和視圖(Create.cshtml,Delete.cshtml,Details.cshtml,Edit.cshtml,和Index.cshtml),3:

 

 圖3

  這樣,系統就能實現基本的增刪改查了,是不是覺得很神奇呢,一開始我也覺得很不可思議的。

  但不幸的是,因MVC是三層架構的,內部原理比較複雜,所以設計系統前需要花費一些時間去思考。再加上,其多使用的新視圖引擎Razor不能拖放控制項,所以對於我們對HTML不是很熟悉的人來說也是有些挑戰的。後來因我們所要製作的手機端BBS是一個很小型的系統,所以經理還是建議我們用普通的開發模式進行開發比較妥當,不容易造成得不償失。因此,我們還是決定用會普通的開發模式進行開發了。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.