Entity Framework

Entity Framework

基本用法(CRUD)

1.插入:

// Create entity context
MyTest2Entities mt = new MyTest2Entities(); // Create an instance of SClass
SClass sc = new SClass(); sc.AddTime = DateTime.Now; sc.Name = "Class 1"; // Insert the instance into database
mt.SClasses.Add(sc); int count = mt.SaveChanges(); Console.WriteLine(count.ToString());

2.修改:

// Create entity context
MyTest2Entities mt = new MyTest2Entities(); // Create an instance need modified
SClass sc = new SClass(); sc.Id = 2; sc.Name = "Kyle"; sc.AddTime = DateTime.Now; // Attach the entity need modified
mt.SClasses.Attach(sc); // Modify execute status
mt.Entry(sc).State = System.Data.Entity.EntityState.Modified; mt.SaveChanges();

3.查询:

#region Multiple record query MyTest2Entities mt = new MyTest2Entities(); var classes = from c in mt.SClasses where c.Id < 10
                select c; foreach (var item in classes) { Console.WriteLine(item.Name); } #endregion

#region Single record query MyTest2Entities mt = new MyTest2Entities(); var single = (from c in mt.SClasses where c.Id == 1
                select c).FirstOrDefault(); if (single != null) Console.WriteLine(single.Name); #endregion

4.删除:

MyTest2Entities mt = new MyTest2Entities(); SClass sc = new SClass(); sc.Id = 2; mt.SClasses.Attach(sc); mt.Entry(sc).State = System.Data.Entity.EntityState.Deleted; mt.SaveChanges();

获取主键:

// TestEntities 继承于 DbContext
using (var db = new TestEntities()) { var objectContext = ((System.Data.Entity.Infrastructure.IObjectContextAdapter)db).ObjectContext; // Brand 是其中一个表
    ObjectSet<Brand> set = objectContext.CreateObjectSet<Brand>(); //Act
    IEnumerable<string> keyNames = set.EntitySet.ElementType.KeyMembers.Select(k => k.Name); Console.WriteLine("{0}", string.Join(",", keyNames.ToArray())); }

转载于:https://www.cnblogs.com/jizhiqiliao/p/10905614.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100904.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 移动通信概述-架构篇[通俗易懂]

    移动通信概述-架构篇[通俗易懂]移动通信概述-架构篇

    2022年9月21日
    3
  • Kettle Spoon入门教程「建议收藏」

    Kettle Spoon入门教程「建议收藏」Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。其中,Spoon是Kettle中的一个组件,其他组件有PAN,CHEF,Encr和KITCHEN等。Spoon通过图形化的页面,方便直观的让你完成数据转换的操作。1、安装配置点我下载最新版本是7.1,小编这里使用的是6.1。下载完毕后,解压即可。因为是Java编写的,需要jdk环

    2022年5月23日
    34
  • Jlink或者stlink用于SWD接口下载程序

    Jlink或者stlink用于SWD接口下载程序最近要使用stm32f103c8t6最小系统板,直接ISP串口下载程序太麻烦,就想着使用swd接口来调试。结果:通过SWD接口下载程序成功,但调试失败,还不知原因,会的的人麻烦交流一下。SWD接口:3.3VDIO(数据)CLK(时钟)GND1.首先声明jlink和stlink都有jtag和swd调试功能。jlink接口如下:如图,我使用的就是VCC…

    2022年4月25日
    56
  • MPI 之 点对点通信的一个实例

    MPI 之 点对点通信的一个实例目标:通过MPI实现100次点对点通信,并计算平均每次的通信时间。代码如下:/**点对点通信100次,计算平均通信时间,并观察传输数据量大小和传输时间关系数据量变化采用动态内存方式从4kb增加到400M,每次增大400kb**/#include&lt;stdio.h&gt;//标准输入输出头文件#include&lt;stdlib.h&gt;//标准库#incl…

    2022年7月25日
    8
  • PHP数组去重的更快实现方式分析

    PHP数组去重的更快实现方式分析PHP数组去重的更快实现方式分析

    2022年4月24日
    38
  • linux的stat命令_fstat函数

    linux的stat命令_fstat函数#include<sys/types.h>#include<sys/stat.h>#include<unistd.h>intstat(constchar*pathname,structstat*buf);pathname:用于指定一个需要查看属性的文件路径。buf:structstat类型指针,用于指向一个structstat结构体变量。调用stat函数的时候需要传入一个structstat变量的指针,获取到的文件..

    2022年8月21日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号