不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
Entity Framework开发模式之Code First示例
编辑:dnawo 日期:2013-08-30
1.创建实体类
Person.cs:
Pet.cs:
2.创建上下文对象类
3.修改配置文件
增加数据库连接字符串节点:
4.数据增删改查示例

说明:虽称为Code First,但在实际使用时,大都使用Entity Framework Power Tools工具从现有数据库生成代码。
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; }
}
}
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; }
}
}
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; }
}
}
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();
}
{
//新增
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 | 引用: 0 | 查看次数: 6120
发表评论
请登录后再发表评论!