欢迎光临

木子屋

标题: Entity Framework开发模式之Code First示例

作者: dnawo

日期: 2013-08-30 10:18 AM

分类: Win编程

内容: 1.创建实体类
Person.cs：
复制内容到剪贴板 程序代码using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace ConsoleApplication1
{
[Table("Person")]
public partial class Person
{
public Person()
{
this.Pet = new HashSet<Pet>();
}
[Key]
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Pet> Pet { get; set; }
}
}
Pet.cs：
复制内容到剪贴板 程序代码using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace ConsoleApplication1
{
[Table("Pet")]
public partial class Pet
{
[Key]
public int Id { get; set; }
[ForeignKey("Person")] //TableName
public Nullable<int> Pid { get; set; }
public string Name { get; set; }
public virtual Person Person { get; set; }
}
}
2.创建上下文对象类
复制内容到剪贴板 程序代码using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
namespace ConsoleApplication1
{
public partial class testContext : DbContext
{
public testContext()
: base("name=testContext")
{
}
public DbSet<Person> Person { get; set; }
public DbSet<Pet> Pet { get; set; }
}
}
3.修改配置文件
增加数据库连接字符串节点：
复制内容到剪贴板 程序代码<add name="testContext" connectionString="Data Source=(local);Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=sa111;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
4.数据增删改查示例
复制内容到剪贴板 程序代码using (testContext db = new testContext())
{
//新增
var person1 = new Person() { Name = "Lily" };
db.Person.Add(person1);
var person2 = new Person() { Name = "LiLei" };
db.Person.Add(person2);
db.SaveChanges();
//修改
var person3 = db.Person.Where(item => item.Id == 1).FirstOrDefault();
person3.Name = "Lucy";
db.SaveChanges();
//遍历
var data = db.Person;
foreach (var item in data)
{
Console.WriteLine("{0},{1}", item.Id, item.Name);
}
//删除
var person4 = db.Person.Where(item => item.Name == "LiLei").FirstOrDefault();
db.Person.Remove(person4);
db.SaveChanges();
}
说明：虽称为Code First，但在实际使用时，大都使用Entity Framework Power Tools工具从现有数据库生成代码。

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.617 ms

返回

标题: Entity Framework开发模式之Code First示例

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.617 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.664 ms

返回