二、MVC3+EF单表增删改查
document 表为例 写入静态类 NorthwindDataProvider:
Controller可直接调用:如
//获取document表全部数据
NorthwindDataProvider.GetDocuments()
document 类:EF 映射
public static class NorthwindDataProvider
{
const string NorthwindDataContextKey = "DXNorthwindDataContext"; public static NWindEntities DB
{
get
{
if (HttpContext.Current.Items[NorthwindDataContextKey] == null)
HttpContext.Current.Items[NorthwindDataContextKey] = new NWindEntities();
return (NWindEntities)HttpContext.Current.Items[NorthwindDataContextKey];
}
}
/// <summary>
/// 查询所有document表数据
/// </summary>
/// <returns></returns>
public static IEnumerable GetDocuments()
{
return from document in DB.Documents select document;
}
/// <summary>
/// 增加一条document数据
/// </summary>
/// <param name="doc">传入新数据</param>
public static void AddDocument(Document doc)
{
DB.Documents.AddObject(doc);
DB.SaveChanges();
}
/// <summary>
/// 根据ID查询document数据
/// </summary>
/// <param name="id">传入主键</param>
/// <returns></returns>
public static Document GetDocumentById(int id)
{
var val = from document in DB.Documents where document.DocumentId == id select document;
return val.First();
}
/// <summary>
/// 修改一条document数据
/// </summary>
/// <param name="doc">传入修改后的数据</param>
public static void UpdateDocument(Document doc)
{
Document oldDoc = DB.Documents.First(p => p.DocumentId == doc.DocumentId);
oldDoc.DocumentCode = doc.DocumentCode == null ? oldDoc.DocumentCode : doc.DocumentCode;
oldDoc.DocumentName = doc.DocumentName == null ? oldDoc.DocumentName : doc.DocumentName;
oldDoc.DocumentMemo = doc.DocumentMemo == null ? oldDoc.DocumentMemo : doc.DocumentMemo;
oldDoc.DocumentType = doc.DocumentType == null ? oldDoc.DocumentType : doc.DocumentType;
oldDoc.DocumentDate = doc.DocumentDate == null ? oldDoc.DocumentDate : doc.DocumentDate;
DB.SaveChanges();
}
/// <summary>
/// 删除一条document数据
/// </summary>
/// <param name="id">被删除数据的主键</param>
public static void deleteDocument(int id)
{
var obj = DB.Documents.Where(c => c.DocumentId == id).First();
DB.DeleteObject(obj);
DB.SaveChanges();
}
}
二、MVC3+EF单表增删改查的更多相关文章
- Django框架(八)--单表增删改查,在Python脚本中调用Django环境
一.数据库连接配置 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DA ...
- Django框架(九)—— 单表增删改查,在Python脚本中调用Django环境
目录 单表增删改查,在Python脚本中调用Django环境 一.数据库连接配置 二.orm创建表和字段 三.单表增删改查 1.增加数据 2.删除数据 3.修改数据 4.查询数据 四.在Python脚 ...
- mysql数据库单表增删改查命令
数据库DB-database-mysql 课程安排 第一天: 1.数据库定义以及设计 2.mysql服务端的安装 3.mysql-dos操作 库的操作 表的操作 4.mysql客户端navicate工 ...
- $Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期
1 orm介绍 ORM是什么 ORM 是 python编程语言后端web框架 Django的核心思想,“Object Relational Mapping”,即对象-关系映射,简称ORM. 一 ...
- Django ORM基本的单表增删改查
创建表 步骤: 1.app下models.py里创建类(继承models.Model) from django.db import models class UserInfo(models.Model ...
- ORM之单表增删改查
ORM之单表增删改查 在函数前,先导入要操作的数据库表模块,model from model所在的路径文件夹 import model 在views文件中,加的路径: #就一个app01功能的文件 ...
- MySQL初步理解,简易单表增删改查
什么是数据库? 存储数据的仓库,本质是一个文件系统,封装了算法和文件之前数据的存储模式 阶段1:集合 数组 变量 缺点:数据存储在内存中,不能实现数据的持久化存储 阶段2:IO流 结合文件 .txt ...
- django(七)之数据库表的单表-增删改查QuerySet,双下划线
https://www.cnblogs.com/haiyan123/p/7738435.html https://www.cnblogs.com/yuanchenqi/articles/6083427 ...
- Django ORM字段类型 单表增删改查 万能的双下划线
1.ORM三种模型 模型之间的三种关系:一对一,一对多,多对多. 一对一:实质就是在主外键(author_id就是foreign key)的关系基础上,给外键加了一个UNIQUE=True的属性: 一 ...
随机推荐
- kali linux之wireshark/tcpdump
抓包嗅探协议分析,必备技能,抓包引擎(linux---libpcap9 windows-----winpcap10) 解码能力优秀 常见协议包 数据包的分层i协议 arp icmp tcp--三次 ...
- React学习笔记一
我是通过script src的方式引入的react的相关文件,本次学习顺序按照<React快速上手开发>一书的顺序学习的, 本篇博客笔记地址:http://note.youdao.com/ ...
- Sql Server两个数据库中有一张表的结构一样,怎么快速将一张表中的数据复制到另一个表中
1,下面这句会把表2数据删除,然后把表1复制到表一,两表内容一样 SELECT * into 表2 FROM 表1 2,这句只追加,不删除表2的数据 insert into 表1 select * f ...
- System.Security.Cryptography.CryptographicException
在调用System.Security.Cryptography.ProtectedData.Protect方法来保护私密信息时,IIS可能会报以下错误:CryptographicException: ...
- 传智播客Springmvc_mybatis学习笔记
文件地址:https://download.csdn.net/download/qq_26078953/10614459
- vue 在路由中复用组件
首先需要在app.vue中引入: <template> <div id="app"> <!--<app-header></app-h ...
- C++_类和动态内存分配1—动态内存和类
静态类成员 num_strings成员声明为静态存储类.静态类成员有一个特点:无论创建了多少对象,程序都只创建一个静态类变量副本.也就是说,类的所有对象共享一个静态成员.num_strings成员可以 ...
- [洛谷 P4612][COCI 2011-2012#7] Setnja
传送门 TM :setnja (1S256M) 一个人要散步去会见他的 N 个朋友(按给定的顺序会见).我们可以理解成他们都住在一个 很大的网格内,每个朋友住其中的一个单元格,所有人每一步都可以走到相 ...
- bootdo开源项目修改代码后页面无效
修改了JS文件,重启服务后,发现页面没有刷新出效果. 清空缓存一般就可以解决此问题.
- webpacke
webpacke 安装 首先要安装 Node.js, Node.js 自带了软件包管理器 npm 用npm 安装webpack $ npm install webpack -g 此时 Webpac ...