EF框架
Linq to EF
添加:
//用户注册
int IUserDAO.Register(Users user)
{
int uid = ;
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
EF.DD_Users entity = new EF.DD_Users()
{
UserName = user.UserName,
Password = user.Password,
RegistTime = user.RegistTime,
CartLevel = user.CartLevel,
GradeID = user.GradeID,
GoldBalance = user.GoldBalance,
NickName = user.NickName,
State=user.State,
UserNameType=user.UserNameType
};
context.DD_Users.Add(entity);
context.SaveChanges();
uid = entity.UID;
}
return uid;
}
修改:
//用户修改
bool IUserDAO.EditUser(Users u)
{
bool flag = false;
using( EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
var user = context.DD_Users.SingleOrDefault(a =>a.UID == u.UID);
if (user != null)
{
user.Birthday = u.Birthday;
user.Gender = u.Gender;
user.IDNumber = u.IDNumber;
user.NickName = u.NickName;
user.PersonalIDType = u.PersonalIDType;
user.Industry = u.Industry;
user.Professional = u.Professional;
user.RealName = u.RealName;
user.AddressID = u.AddressID;
user.Address = u.Address;
flag=context.SaveChanges()>?true:false;
}
}
return flag;
}
用户查询:
//用户登录
Users IUserDAO.Login(string loginid, string password)
{
Users user = null;
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
var entity = context.DD_Users.FirstOrDefault(u => u.UserName == loginid && u.Password == password);
if (entity != null)
{
user = CreatUser(user, entity);
}
}
return user;
} private static Users CreatUser(Users user, EF.DD_Users entity)
{
user = new Users()
{
UserName = entity.UserName,
UID = entity.UID,
Birthday = entity.Birthday,
GradeID = entity.GradeID,
Email = entity.Email,
CartLevel = entity.CartLevel,
GoldBalance = entity.GoldBalance,
IDBackImage = entity.IDBackImage,
IDFrontImage = entity.IDFrontImage,
IDNumber = entity.IDNumber,
LastAddressID = entity.LastAddressID,
LastInvoiceTypeID = entity.LastInvoiceTypeID,
PersonalIDType = entity.PersonalIDType,
LastLoginTime = entity.LastLoginTime,
Mobile = entity.Mobile,
NickName = entity.NickName,
Password = entity.Password,
RealName = entity.RealName,
RegistTime = entity.RegistTime,
State = entity.State,
UserNameType=entity.UserNameType,
Gender = entity.Gender,
Address = entity.Address,
Industry = entity.Industry,
Professional = entity.Professional,
IsVolunteer=entity.IsVolunteer,
HeadImage=entity.HeadImage,
AddressID=entity.AddressID
};
return user;
}
删除:
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
var user= context.Users.Where(c => c.Uid== ).First();
context.Users.Remove(user);
context.SaveChanges();
}
查询返回集合
List<InspectionUsers> IProductQualityDAO.GetAllInspection()
{
List<VIEWMODEL.InspectionUsers> inspectionUsers = null;
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{ inspectionUsers = (from f in context.DD_InspectionUsers
select new VIEWMODEL.InspectionUsers
{
INSID = f.INSID,
UserName = f.UserName,
Password = f.Password,
Mobile = f.Mobile,
Email = f.Email,
Telephone = f.Telephone,
RealName = f.RealName,
Birthday = f.Birthday,
PersonalIDType = f.PersonalIDType,
IDNumber = f.IDNumber,
IDFrontImage = f.IDFrontImage,
IDBackImage = f.IDBackImage,
CredentialTypeName = f.CredentialTypeName,
CredentialNumber = f.CredentialNumber,
CredentialFrontImage = f.CredentialFrontImage,
CredentialBackImage = f.CredentialBackImage,
Grade = f.Grade,
RegistTime = f.RegistTime,
LastLoginTime = f.LastLoginTime,
LastInspectTime = f.LastInspectTime,
Professional = f.Professional,
INDIDS = f.INDIDS
}).ToList();
}
return inspectionUsers;
}
EF多表联查
List<ProductInspections> IProductQualityDAO.GetProductsByINSID(int INSID)
{ List<ProductInspections> list =new List<ProductInspections>();
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
list = (from pi in context.DD_ProductInspections
join p in context.DD_Products on pi.ProductID equals p.PID
join psp in context.DD_ProductStylePrices on pi.ProductID equals psp.PID
where pi.InspectorID == INSID
select new ProductInspections
{
ID=pi.ID,
InspectImgUrl=pi.InspectImgUrl,
InspectorID = pi.InspectorID,
InspectTime=pi.InspectTime,
ProductID=pi.ProductID,
Report=pi.Report,
ReportingTime=pi.ReportingTime,
Score=pi.Score,
ProductPrice=psp.Price,
ProductImageUrl=pi.InspectImgUrl,
ProductName = p.ProductName,
PRID = psp.PRID
}).ToList();
}
return list;
}
EF的二次查询(自己胡乱叫的名字)
IList<SubOrders> IOrderDAO.GetSubOrders(int uid)
{
List<SubOrders> list = new List<SubOrders>();
using (EF.ddgwDBEntities content = new EF.ddgwDBEntities())
{
var entities = content.DD_MainOrders.Where(o => o.UserID == uid);
foreach (var e in entities)
{
var collection = content.DD_SubOrders.Where(o => o.MOID == e.MOID).ToList();
foreach (var l in collection)
{
SubOrders s = new SubOrders();
s.MOID = l.MOID;
s.PID = l.PID;
s.PRID = l.PRID;
s.SenderID = l.SenderID;
s.SendTime = l.SendTime;
s.ShopsID = l.ShopsID;
s.SOID = l.SOID;
s.SubCoins = l.SubCoins;
s.Subtotal = l.Subtotal;
s.HasSent = l.HasSent;
s.HasShowed = l.HasShowed;
s.BuyingTime = l.BuyingTime;
s.DeliveryCost = l.DeliveryCost;
s.DeliveryMethod = l.DeliveryMethod;
s.HasApplyedReparing = l.HasApplyedReparing;
s.HasApplyedReplacing = l.HasApplyedReplacing;
s.HasApplyedReturning = l.HasApplyedReturning;
s.HasComment = l.HasComment;
s.HasReceived = l.HasReceived;
s.IsFreeCost = l.IsFreeCost;
s.Quantity = l.Quantity;
s.ReceiveTime = l.ReceiveTime;
s.UnitPrice = l.UnitPrice;
list.Add(s);
}
}
}
//查询完后还可继续联查
using (EF.ddgwDBEntities context = new EF.ddgwDBEntities())
{
foreach (var o in list)
{
EF.DD_ProductStylePrices productStylePrices = context.DD_ProductStylePrices.Single(a => a.PRID == o.PRID);
o.ImgUrl = context.DD_ProductImages.Where(p => p.PID == o.PID && productStylePrices.StyleJson.Contains("," + p.pGroupNo + ",")).ToList()[].Path;
o.ProductName = context.DD_Products.FirstOrDefault(p => p.PID == o.PID).ProductName;
}
}
return list;
}
EF框架的更多相关文章
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(24)-权限组的设计和实现(附源码)(终结)
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(22)-为用户设置角色
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- EF框架的三种工作方式
EF框架step by step(1)—Database-First EF框架step by step(2)—Model-First EF框架step by step(3)—Code-First 通过 ...
- C# CodeFirst(EF框架)代码优先创建数据库
namespace WebEF.Model{ public class ModelContext:DbContext //继承DBcontext 来自EF框架 { public ModelContex ...
- EF框架学习手记
转载: [ASP.NET MVC]: - EF框架学习手记 1.EF(Entity Framework)实体框架EF是ADO.NET中的一组支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架 ...
- EF框架之三种模式
使用EF之前必须要对EF有个宏观的了解.学习任何一种技术都要像门卫一样问几个问题. 第一,它是谁? 第二,从哪里来? 第三,到哪里去? 默念一遍:不谋全局者,不足谋一域. Entity Framewo ...
- EF框架step by step(7)—Code First DataAnnotations(2)
上一篇EF框架step by step(7)—Code First DataAnnotations(1)描述了实体内部的采用数据特性描述与表的关系.这一篇将用DataAnnotations描述一下实体 ...
- EF框架step by step(7)—Code First DataAnnotations(1)
Data annotation特性是在.NET 3.5中引进的,给ASP.NET web应用中的类提供了一种添加验证的方式.Code First允许你使用代码来建立实体框架模型,同时允许用Data a ...
- EF框架step by step(5)—处理实体简单属性
EF框架会对实体进行跟踪,对实体的每个属性当前值和原始值及其状态进行跟踪,记录.当前值是指实体属性当前的被赋予的值,而原始值是指实体最初从数据库读取或者附加到DbContext时的值. 先通过简单的代 ...
随机推荐
- Python3中集合的混合使用
比较简单没什么好说的: list_1 = [1,2,3,4,6,3,2,5,7,8,2,1] list_1 = set(list_1) list_1.add(999) list_2 = set([2, ...
- Vue.js 的几点总结Watchers/router key/render
Vue.js 的几点总结,下面就是实战案例,一起来看一下. 第一招:化繁为简的Watchers 场景还原: 1 2 3 4 5 6 7 8 created(){ this.fetchPostLis ...
- Linux配置国内的Yum源
因为Linux默认的yum源是国外的源,所以会有卡顿,缓慢的情况.而国内的Yum源相对速度较快,现在也比较成熟,所以给Linux更换国内Yum源是一个很好的选择. 1. 备份(备份之前需要yum i ...
- JavaScript学习笔记——1.了解JavaScript
百度百科: JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果.通常JavaScript脚本是通过嵌入在HT ...
- ie浏览器(Internet Explorer)不播放背景音乐
这里就不说bgsound了,支持格式较少 一个网站要加背景音乐,好些年没加背景音乐了,用embed标签把背景音乐加上了,Mozilla Firefox,Google Chrome,Safari都正常, ...
- Django 10 GET和POST(HttpRequest对象,GET和POST请求,文件上传,HttpResponse对象的cookie)
Django 10 GET和POST(HttpRequest对象,GET和POST请求,文件上传,HttpResponse对象的cookie) 一.HttpRequest对象 #HttpRequest ...
- eclipse 自定义 文档
在这里写....
- Canvas制作动态进度加载水球
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- P3172 [CQOI2015]选数(莫比乌斯反演)
[题目链接] https://www.luogu.org/problemnew/show/P3172 [题解] https://www.luogu.org/blog/user29936/solutio ...
- Swagger的坑
swagger.pathPatterns如果是譬如/w/.*,那么如果API中以w开头的描述就会在swagger-ui中显示不出来