標籤:
1.在Model類裡面,寫好相應的屬性。
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Data.Entity; 6 7 namespace MvcMovie.Models 8 { 9 public class Movie10 {11 public int ID { get; set; }12 public string Title { get; set; }13 public DateTime ReleaseDate { get; set; }14 public string Genre { get; set; }15 public decimal Price { get; set; }16 }17 18 public class MovieDBContext : DbContext19 {20 public DbSet<Movie> Movies { get; set; }21 }22 }
Movie
2.在設定檔中,寫上:
1 <add name="MovieDBContext"2 connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"3 providerName="System.Data.SqlClient"/>
設定檔,連接字串
3.添加一個控制器,選擇剛才我們建立的Model作為模型(即建立強型別視圖)
4.這個時候,重建一下項目,就會在App_Data裡面產生了一個資料庫(Movie.mdf).
Entity Framework Code First detected that the database connection string that was provided pointed to a Movies
database that didn’t exist yet, so Code First created the database automatically. 這句話的意思是:EF 代碼先行檢測到,資料庫的連接字串,指向了一個Movie的資料庫,但是這個資料庫並不存在,所以code first自動為我們建立了這個資料庫。
5.You don‘t actually need to add the MovieDBContext
connection string. If you don‘t specify a connection string, Entity Framework will create a LocalDB database in the users directory with the fully qualified name of the DbContextclass (in this case MvcMovie.Models.MovieDBContext
). You can name the database anything you like, as long as it has the .MDF suffix. For example, we could name the database MyFilms.mdf.
這句話的大概意思是:你實際上不必添加我上面的字串到webconifg檔案中,因為EF會為我們按照使用者項目的實體路徑,建立一個全路徑的名稱的資料庫。如果你添加了連接字串,EF就會按照你寫的,為你建立這個資料庫。
6.EF為我們建立的資料庫為:
可以看出,EF為我們建立的資料庫,string欄位,預設是為空白的。ID欄位預設是主鍵。
ASP.NET MVC5利用EF,反向自動產生資料庫