您的位置:首页 > 其它

第004课:EF使用方式三:Code First

2013-08-28 23:20 435 查看

1 Code First 和 Model First的区别

Model First是通过设计EDM来设计Entity

Code First 不通过EDM来设计Entity,纯Code

 

2 新建ASP.NET MVC4项目"MvcApplication3"

2.1 新建类Product.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MvcApplication3.Models
{
public class Product
{
public int Id { get; set; }
public string Title { get; set; }
public int CategoryId { get; set; }

public virtual ProductCategory ProductCategory { get; set; }

}
}


2.2 新建类ProductCategory.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MvcApplication3.Models
{
public class ProductCategory
{
public int Id { get; set; }
public string Title { get; set; }

public virtual List<Product> Products { get; set; }
}
}


 

2.3 新建数据上下文类TestDB3Context.cs

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;

namespace MvcApplication3.Models
{
/// <summary>
/// 数据库上下文类
/// </summary>
public class TestDB3Context : DbContext
{
public TestDB3Context()
: base("name=TestDB3Context")
{
}
public DbSet<Product> Product{get;set;}
public DbSet<ProductCategory> ProductCategory { get; set; }

}
}


 

2.4 在Web.config新建数据库链接字符串

<connectionStrings>
<add name="TestDB3Context" connectionString="Data Source=WIN7-YANG\SQLSERVER2008;Initial Catalog=TestDB3;Integrated Security=True;MultipleActiveResultSets=True"   providerName="System.Data.SqlClient"/>
</connectionStrings>


 

3 新建数据库

打开 SQLServer2008新建数据库 TestDB3

 

4 测试一下

在HomeController修改Index方法

public ActionResult Index()
{

var productCategory = new ProductCategory {
Title = "手机"
};

using (var db = new TestDB3Context())
{
db.ProductCategory.Add(productCategory);
db.SaveChanges();
}

return View();
}


在浏览器中运行

查看数据库,看是否生成表(注意除了生成ProductCategories,Products表外,还生成了迁移表__MigrationHistory)





查看数据库,表中数据





说明操作成功!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: