Linq To Entity学习实践
- public class CustomDataContext<TEntity> : System.Data.Linq.DataContext
- where TEntity : class,new()
- {
- public CustomDataContext() :
- base(ConfigurationManager.AppSettings["TestDbConnectionString"])
- {
- }
- #region 创建一个新对象
- public bool Create(TEntity entity)
- {
- EntityList.InsertOnSubmit(entity);
- SubmitChanges();
- return true;
- }
- public bool Create(IEnumerable<TEntity> entities)
- {
- EntityList.InsertAllOnSubmit(entities);
- SubmitChanges();
- return true;
- }
- #endregion
- #region 删除一个对象
- public bool Delete(TEntity entity)
- {
- EntityList.DeleteOnSubmit(entity);
- SubmitChanges();
- return true;
- }
- public bool Delete(IEnumerable<TEntity> entities)
- {
- EntityList.DeleteAllOnSubmit(entities);
- SubmitChanges();
- return true;
- }
- #endregion
- #region 修改对象
- public bool Modify(TEntity entity)
- {
- EntityList.Attach(entity, true);
- SubmitChanges();
- return true;
- }
- public bool Modify(IEnumerable<TEntity> entities)
- {
- EntityList.AttachAll(entities, true);
- SubmitChanges();
- return true;
- }
- #endregion
- #region 查询对象
- public TEntity GetEntity(Expression<Func<TEntity, bool>> predicate)
- {
- return EntityList.FirstOrDefault(predicate);
- }
- public IList<TEntity> GetList()
- {
- return EntityList.ToList();
- }
- public IQueryable<TEntity> GetList(Expression<Func<TEntity, bool>> predicate)
- {
- return EntityList.Where(predicate);
- }
- #endregion
- public System.Data.Linq.Table<TEntity> EntityList
- {
- get
- {
- return this.GetTable<TEntity>();
- }
- }
- }
CustomDataContext
- [Table(Name = "dbo.DemoClass")]
- public class DemoClass
- {
- public DemoClass()
- {
- }
- [Column(Name = "ID", IsPrimaryKey = true, IsDbGenerated = true)]
- public int ID
- {
- get;
- set;
- }
- [Column(Name = "UserName")]
- public string UserName
- {
- get;
- set;
- }
- [Column(Name = "Phone")]
- public string Phone
- {
- get;
- set;
- }
- [Column(Name = "Email")]
- public string Email
- {
- get;
- set;
- }
- [Column(Name = "Password")]
- public string Password
- {
- get;
- set;
- }
- }
DemoClass
- DemoClass model = new DemoClass();
- model.UserName = "zhagnsan";
- model.Phone = "";
- model.Email = "zhangsan@163.com";
- model.Password = "";
- using (var context = new CustomDataContext<DemoClass>())
- {
- if (model != null)
- {
- context.Create(model);
- }
- }
测试
- using System;
- using System.Collections.Generic;
- using System.Configuration;
- using System.Data.Linq.Mapping;
- using System.Linq;
- using System.Linq.Expressions;
Linq To Entity学习实践的更多相关文章
- Linq学习<三> linq to entity
之前一直用sql选择出数据放在一个集合中,然后再用Linq或者lambda去操作数据,今天学了Linq to entity 才知道原来linq产生是为了Entity.也就是EDM(实体数据模型) 关于 ...
- 第04项目:淘淘商城(SpringMVC+Spring+Mybatis) 的学习实践总结【第六天】
https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...
- 深入调研Linq to Objects Join Linq to Entity
最近工作中遇到数据库组合查询带来的一些问题,因此有必要调研一下Linq to Objects Join Linq to Entity.参考一些网友的代码案例,深入实践了一下使用EntityFramew ...
- 使用sklearn进行集成学习——实践
系列 <使用sklearn进行集成学习——理论> <使用sklearn进行集成学习——实践> 目录 1 Random Forest和Gradient Tree Boosting ...
- Nagios学习实践系列——基本安装篇
开篇介绍 最近由于工作需要,学习研究了一下Nagios的安装.配置.使用,关于Nagios的介绍,可以参考我上篇随笔Nagios学习实践系列——产品介绍篇 实验环境 操作系统:Red Hat Ente ...
- Nagios学习实践系列——配置研究[监控当前服务器]
其实上篇Nagios学习实践系列——基本安装篇只是安装了Nagios基本组件,虽然能够打开主页,但是如果不配置相关配置文件文件,那么左边菜单很多页面都打不开,相当于只是一个空壳子.接下来,我们来学习研 ...
- Linq to Entity经验:表达式转换
http://www.cnblogs.com/ASPNET2008/archive/2012/10/27/2742434.html 最近一年的项目,我主要负责一些小型项目(就是指企业内部的小项目),在 ...
- 前端学习实践笔记--JavaScript深入【1】
这一年中零零散散看过几本javascript的书,回过头看之前写过的javascript学习笔记,未免有点汗颜,突出“肤浅”二字,然越深入越觉得javascript的博大精深,有种只缘身在此山中的感觉 ...
- EF架构~linq to entity的随机排序问题
回到目录 对于从linq to sql迁移过来的开发者,对随机排序不会感到陌生,直接为datacontext添加一个方法再配合反射就可以实现随机排序了,代码如下: /// <summary> ...
随机推荐
- eclipse projectExplorer视图(以包的方式显示)与navigator视图切换(以文件夹的方式显示)及树状视图与平面视图的切换
projectExplorer与navigator的切换 projectExplorer视图效果 想要此视图效果步骤如下: 分割------------------------------------ ...
- 多种方式实现依赖注入及使用注解定义bean
构造注入 如何给构造方法中的参数注入方法呢如下 首先bean代码如下 package cn.pojo; public class Greeting { /** * 说的话 */ private Str ...
- JS进阶篇--JS数组reduce()方法详解及高级技巧
基本概念 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值. reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被 ...
- vue2.0:子组件调用父组件
main.js文件添加如下: new Vue({ router, render: h => h(App), data: { eventHub: new Vue() }}).$mount('#ap ...
- python简单试题4
( ps : 题目中用到的一些random函数在最后末尾处有介绍) 1,在屏幕上显示跑马灯文字 import os # 调用os模块 import time # 调用时间模块 def main(): ...
- SpringMVC controller接收的中文参数乱码
CharacterEncodingFilter只对POST请求有用,GET请求的需要对你运行的tomcat 目录conf/server.xml文件中<Connector connectionTi ...
- 设计模式之第2章-抽象工厂模式(Java实现)
设计模式之第2章-抽象工厂模式(Java实现) “上次是我的不对,贿赂作者让我先讲来着,不过老婆大人大人有大量,不与我计较,这次还让我先把上次未讲完的应用场景部分给补充上去,有妻如此,夫复何求.”(说 ...
- leetcode 【 Merge Sorted Array 】python 实现
题目: Given two sorted integer arrays A and B, merge B into A as one sorted array. Note:You may assume ...
- ogre3D学习基础13 -- 键盘控制网格动画mesh
以上一节为蓝本,这里增加一点难度,添加了四个节点,增加键盘控制移动速度,使用bool变量控制是否移动. 第一,要增加键盘控制,那就使用OIS::KeyListener,在监听器里添加一个父类KeyLi ...
- Python实现对百度云的文件上传
环境准备 python3.6 PyCharm 2017.1.3 Windows环境 框架搭建 selenium3.6 安装方法: pip install selenium 实现步骤: 一.步骤分析 1 ...