• .net EF框架-实现增删改查


    声明一个EF上下文对象

     Model dbContext = new Model(); 

    添加操作(向表中插入一条数据)

    //声明一个表的实体
    Contact contact = new Contact();
    //向表中的字段添加数据
    contact.Name = "张三";
    contact.EnrollmentDate = DateTime.Now;
    //做插入操作
    dbContext.Contacts.Add(contact);
     //保存
    dbContext.SaveChanges();

    修改操作(根据ID修改表中的数据)

    //声明一个表的实体
    Contact contact = new Contact();
    contact.Name = "张三三";
    contact.EnrollmentDate = DateTime.Now;
    contact.ID = 3;  //修改或删除操作时必填字段
    //做修改操作
    dbContext.Entry<Contact>(contact).State=System.Data.Entity.EntityState.Modified;
    //保存
    dbContext.SaveChanges();

    删除操作(根据ID删除表中的数据)

    //删除ID为3的一条数据
    Contact contact = dbContext.Contacts.Find(3);
    dbContext.Contacts.Remove(contact);
    dbContext.SaveChanges();

    查询操作(查询表中所有数据)

     List<Contact> list = dbContext.Contacts.ToList();

    查询操作(条件查询)

    List<Contact> list = dbContext.Contacts.Where(u => u.Name == "东莞").ToList();

     查询操作(根据ID查看单条数据)

    Contact contact = dbContext.Contacts.Find(30);

    查看数据(分页及条件查询)

    int _Page=3;  //第几页
    int _Take = 5;  //每页显示多少条数据
    List<Contact> result = dbContext.Contacts.Where(a => a.Name == "东莞").OrderBy(a => a.ID).Skip(_Take * (_Page - 1)).Take(_Take).ToList();

    查看数据(条件模糊查询)

    //Contains等价于数据库 like '%key%'指定的字符串对象是否出现在字符串中
    //EndsWith等价于数据库 like '%key'  字符串对象结尾是否与指定字符串匹配
    //StartsWith等价于数据库 like 'key%'字符串对象开头是否与指定字符串匹配
    List<Contact> result = dbContext.Contacts.Where(a => a.Name.Contains("东莞") || a.Name.EndsWith("2")).ToList();

    创建 DbSet 对象

     public partial class Model : DbContext
     {
         public Model()
             : base("name=efdemo")
         {
         }
         public virtual DbSet<Contact> Contacts { get; set; }
    }

    创建Contact表对象

     public class Contact
     {
        public int ID { get; set; }
        public string Name { get; set; }
        public DateTime EnrollmentDate { get; set; }
        public virtual ICollection<Enrollment> Enrollments { get; set; }
     }
  • 相关阅读:
    04_特征工程
    03_特征清洗
    02_数据探索
    01_简介
    cache是什么文件?
    gulp详细入门教程
    HTML5实战与剖析之触摸事件(touchstart、touchmove和touchend)
    h4和h5的区别
    弹性盒布局
    js面向对象
  • 原文地址:https://www.cnblogs.com/nicest/p/7126379.html
Copyright © 2020-2023  润新知