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)
暂无评论。