首页 > 数据库 >VS2010 + Mysql5.7 使用ADO.Net Entity Framework

VS2010 + Mysql5.7 使用ADO.Net Entity Framework

时间:2022-08-14 16:47:02浏览次数:51  
标签:school Students Mysql5.7 VS2010 Entity stu SaveChanges public void

       系统很LOW,不想花太多时间来升级,可想做点什么,总是这也不行那也不行,更种安装要不就是vs版本太低,要不不支持低版本的mysql,调试起来很费时。用老版办法写代码又太费劲,还是想在现有的基础上找到在vs2010中针对mysql数据库使用ADO.net Entity Framework。费了很多时间实验,最后找到的方法其实很简。不需要单独安装mysql for vs(如果要装要1.1.4支持2010),在mysql-connector-net-6.6.5.msi中集成了mysql for vs2010。

好久没用,把EF最基本的东西都快忘光了,最基本的CRUD操作如下:

建一个数据库对象

SchoolEntities school = new SchoolEntities();

添加一条记录

public void Add(Student stu)
{
school.Students.Add(stu);
school.SaveChanges();
}

public void Add(Student stu)
{
school.Entry(stu).State = EntityState.Added;
school.SaveChanges();
}
添加多条数据

public void Add(List<Student> list)
{
school.Students.AddRange(list);
school.SaveChanges();
}

删除一条记录

public void Delete(Student stu)
{
school.Students.Remove(stu);
school.SaveChanges();
}

public void Delete2(Student stu)
{
school.Entry(stu).State = EntityState.Deleted;
school.SaveChanges();
}
删除多条记录

public void Delete(List<Student> list)
{
school.Students.RemoveRange(list);
school.SaveChanges();
}

public void Delete(List<Student> list)
{
foreach (var item in list)
{
school.Entry(item).State = EntityState.Deleted;
}
school.SaveChanges();
}

修改一条记录

public void Update(Student stu)
{
school.Entry(stu).State = EntityState.Modified;

school.SaveChanges();
}
修改多条记录

public void Update(List<Student> list)
{
foreach (var item in list)
{
school.Entry(item).State = EntityState.Modified;
}
school.SaveChanges();
}
修改单个列,比如只修改Name字段

public void Update(Student stu)
{
school.Students.Attach(stu);

school.Entry(stu).Property(s => s.Name).IsModified = true;

school.SaveChanges();
}

school.Entry(stu).Property("Name").IsModified = true;

 

查询全部Students

var list = school.Students.ToList();
根据条件查询

var stus1 = school.Students.Where(s => s.Name == "哈哈").ToList();
根据主键查询

var stu1 = school.Students.Find(2);
一条记录

var stu = school.Students.FirstOrDefault(s => s.Name == "哈哈");

 

另关于VS版本,如果要做人工智能,使用ML.NET最好选择2022版本。

 

标签:school,Students,Mysql5.7,VS2010,Entity,stu,SaveChanges,public,void
From: https://www.cnblogs.com/5x19/p/16585723.html

相关文章