一、Linq语法

  1. List操作

1.1          有参

public List<GoodsInfo> ShowInfo(string GName,int?Gid)

{

//true:代表的是获取所有数据,&&代表多条件拼接的意思

List<GoodsInfo> glist = db.GoodsInfo.Where(p =>

(!string.IsNullOrEmpty(GName) ? p.GoodsName.Contains(GName) : true) &&

(Gid != null ? p.GTypeId == Gid : true)).ToList();

return glist;//获取条件过滤后的集合数据

}

1.2          无参

public List<GType> ShowType()

{

return db.GType.ToList();//显示类别

}

二、EF语法

  1. Add

public int AddGoods(GoodsInfo info)

{

db.GoodsInfo.Add(info);//Add()就是EF的添加方法

return db.SaveChanges();//提交保存数据库

}

  1. Delete

public int DelGoods(string id)

{

return db.GoodsInfo.Where(p => id.Contains(p.GoodsId.ToString())).Delete();

}

  1. Model

public GoodsInfo GetGoods(int Gid)

{

var Goods = db.GoodsInfo.Find(Gid);//Find查找,根据编号查找要修改的数据

return Goods;

}

  1. Update

public int UpdateGoods(GoodsInfo model)

{

//将实体模型的状态置为可修改的状态(此方法修改的是全部的字段,不能满足单个修改的要求)

//db.Entry(model).State = EntityState.Modified;

var Goods = db.GoodsInfo.Find(model.GoodsId);//查找要修改的数据(根据商品编号)

//将新的数据覆盖原有的数据

Goods.GoodsName = model.GoodsName;

Goods.GoodsNum = model.GoodsNum;

Goods.GTypeId = model.GTypeId;

Goods.GoodsHoby = model.GoodsHoby;

Goods.GoodState = model.GoodState;

Goods.GoodsPrice = model.GoodsPrice;

return db.SaveChanges();//修改数据并保存数据库

}

EF 操作实例的更多相关文章

  1. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(6)- EF上下文实例管理

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(6)- EF上下文实例管理 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    ( ...

  2. EF操作MySql

    EF的CodeFrist操作MySql的提前准备: 1.安装两个包:MySql.Data和MySql.Data.Entity,在VS中程序包管理器中添加2个包.(备注需要的VS2015,并且EF6支持 ...

  3. ASP.net如何保证EF操作类线程内唯一

    说到线程内唯一,肯定会想到单例模式,但是如果多用户访问网站就会出现问题.ASP.net中有两种方法可以保证EF操作类线程内唯一(目前只会这两种,以后有好的方法再添加): 1.httpcontext(实 ...

  4. CentOS 配置防火墙操作实例(启、停、开、闭端口):

    CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service   iptables status< ...

  5. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  6. Asp.Net MVC 自定义的MVC框架(非EF操作数据库)

    一些废话:在北京辞职回家不知不觉中已经半年多了,这半年中有过很多的彷徨,困惑,还有些小小难受.半年时间算是我人生以来遇到过的最困苦的时候.理想的工作跟我擦肩而过,驾照也没有考过,年后这一改革...,毕 ...

  7. 安卓 SQLite数据库操作实例

    前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...

  8. 在安卓开发中使用SQLite数据库操作实例

    前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...

  9. Sql Server 函数的操作实例!(执行多条语句,返回Select查询后的临时表)

    Sql Server 函数的操作实例!(执行多条语句,返回Select查询后的临时表) SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ==== ...

  10. CentOS 配置防火墙操作实例(启、停、开、闭端口)CentOS Linux-FTP/对外开放端口(接口)TomCat相关

    链接地址:http://blog.csdn.net/jemlee2002/article/details/7042991 CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作 ...

随机推荐

  1. 空间数据格式(地理数据格式):GeoJSON(FeatureCollection)与EsriJSON(FeatureSet/ArcGIS格式)

    一.FeatureCollection(GeoJSON)格式介绍 https://learn.microsoft.com/en-us/javascript/api/azure-maps-control ...

  2. 修改文件时mmap如何处理

    拷贝二进制(elf)文件 在拷贝二进制文件的时候,如果文件是一个可执行文件,并且有一个进程在运行这个可执行文件,那么拷贝的时候会出现"文本忙"(ETXTBSY)的错误提示,并且拷贝 ...

  3. SpringBoot2.2.2+SpringCloud-Hoxton.SR1整合eureka/gateway

    1.最近在学习SpringCloud分布式项目的知识,所以打算把自己学习到的知识也记录下来,为什么选择学习SpringCloud呢?因为分布式框架还有dubbo,如下图应该可以成为我为什么想学习Spr ...

  4. 【ZYNQ学习】ZYNQ架构介绍

    在上一篇博客中,主要介绍了ZYNQ的基本信息以及如何在vivado上实现自己的设计,但是在实际应用中,掌握ZYNQ的架构是必要的,因此在这篇博客中主要记录一下ZYNQ的架构 本篇博客的主要参考是ZYN ...

  5. vim中的命令行 %! 是啥意思?

    :%! command pipes the current file's contents to command's stdin, and replaces the file's contents w ...

  6. lg8945题解

    考虑一个20分的\(O(n^2)\)做法:枚举答案区间\([l,r]\),那么显然要把尽可能多的1填入\([l,r]\).使用前缀和计算\([l,r]\)中\(0\)的个数,那么填入后的价值可以\(O ...

  7. JS学习-异步JS

    异步JS setTimeout() 我们希望传递给setTimeout()中运行的函数的任何参数,都必须作为列表末尾的附加参数传递给它. function sayHi(who) { alert('He ...

  8. linux格式化文件命令

    一些文件被windows打开后代码格式会被改变,使用一下命令来转换 sed -i 's/\r//' filename

  9. Unity算法之A星- A*Pathfind Project插件的使用

    先上效果图 首先上  插件地址  (如果没有积分可以评论区联系我) 1.下载完毕后导入unity 导入后可以在Component里面看到多了一个Pathfinding选项 2.场景搭建 首先新建两个层 ...

  10. 【Java】时间类型

    Date 转 timeStamp long time = System.currentTimeMillis(); // 秒级 long time = System.currentTimeMillis( ...