Phần trước chúng ta đã biết được cách viết code tạo database bằng Entity Framework hôm nay sẽ tiếp tục hướng dẫn làm sao để lấy xem database đã tạo.
Dữ Liệu Của Tôi Ở Đâu ???
Theo quy ước DbContext đã tạo ra một cơ sở dữ liệu cho bạn.
- Nếu một trường hợp SQL Express địa chỉ có sẵn (được cài đặt theo mặc định với Visual Studio 2010) sau đó Mã đầu tiên đã tạo ra cơ sở dữ liệu trên thể hiện rằng
- Nếu SQL Express là không có thì Code sẽ thử và sử dụng LocalDb (được cài đặt theo mặc định với Visual Studio 2012)
- Các cơ sở dữ liệu được đặt tên theo tên đầy đủ của các Context gốc, trong trường hợp của chúng tôi đó là CodeFirstNewDatabaseSample.BloggingContext
Đây là những chỉ các công ước mặc định và có những cách khác nhau để thay đổi các cơ sở dữ liệu rằng Mã Đầu tiên sử dụng, biết thêm thông tin là có sẵn trong các Làm thế nào DbContext phát hiện ra mô hình Model và Database Connection chủ đề.
Bạn có thể kết nối với cơ sở dữ liệu này sử dụng Server Explorer trong Visual Studio
- View
-> Server Explorer
- Right click on Data
Connections and
select Add Connection…
- Nếu bạn chưa kết nối với một cơ sở dữ liệu từ Server Explorer trước khi bạn sẽ cần phải chọn Microsoft SQL Server như các nguồn dữ liệu
public class Blog { public int BlogId { get; set; } public string Name { get; set; } public string Url { get; set; } public virtual List<Post> Posts { get; set; } }
namespace CodeFirstNewDatabaseSample.Migrations { using System; using System.Data.Entity.Migrations; public partial class AddUrl : DbMigration { public override void Up() { AddColumn("dbo.Blogs", "Url", c => c.String()); } public override void Down() { DropColumn("dbo.Blogs", "Url"); } } }
Chạy lệnh Update-Database trong Package Manager Console.Lệnh này sẽ áp dụng bất kỳ di cư cấp phát cho các cơ sở dữ liệu. Di cư InitialCreate của chúng tôi đã được áp dụng để di cư sẽ chỉ áp dụng chuyển đổi AddUrl mới của chúng tôi. Tip: You can use the –Verbose switch when calling Update-Database to see the SQL that is being executed against the database.public class User { public string Username { get; set; } public string DisplayName { get; set; } }
public class BloggingContext : DbContext { public DbSet<Blog> Blogs { get; set; } public DbSet<Post> Posts { get; set; } public DbSet<User> Users { get; set; } }
using System.ComponentModel.DataAnnotations;
public class User { [Key] public string Username { get; set; } public string DisplayName { get; set; } }
public class BloggingContext : DbContext { public DbSet<Blog> Blogs { get; set; } public DbSet<Post> Posts { get; set; } public DbSet<User> Users { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Entity<User>() .Property(u => u.DisplayName) .HasColumnName("display_name"); } }
0 nhận xét