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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • php 该如何获取从百度搜索进入网站的关键词

    php 该如何获取从百度搜索进入网站的关键词

    2021年10月30日
    41
  • RXJava原理_JavaScript的执行原理

    RXJava原理_JavaScript的执行原理RXJava简单理解首先,rxjava是什么?其实对于刚接触rxjava的宝宝而言,只需要掌握两点:观察者模式异步处理观察上图,清楚生动刻画出了rxjava的观察者模式:开关(被观察者)作为的是事件的产生方(产生“on”和“off”这两个Event),有它发起这起开关的事件。台灯(观察者)作为事件的处理方(处理的是“on”和“off”这两个事件),被动的执行on和off。

    2025年8月22日
    1
  • javamethod用法_method

    javamethod用法_methodClass类getMethod()方法getMethod()方法在java.lang包中可用。getMethod()方法用于返回Method对象,这些对象指示该类的给定公共方法或由此Class对象表示的接口。getMethod()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。getMethod()方法在返回Method对象时可能会引发异常。NoSuchM…

    2022年9月23日
    4
  • json_decode用法

    json_decode用法$json='{“a”:1,”b”:2,”c”:3,”d”:4,”e”:5}’;//解析为json对象var_dump(json_decode($json));//解析为数组var_dump(json_decode($json,true));代码执行结果object(stdClass)#1(5){[“a”]=>int(1)[“b”]=>int(2)[“c”]=>int(3)[“d”]=>int(4)

    2022年7月17日
    20
  • UIScrollView 与 touchesBegan 冲突解决方法

    UIScrollView 与 touchesBegan 冲突解决方法UIScrollView与touchesBegan冲突解决方法

    2022年7月25日
    15
  • pycharm使用小技巧_pycharm学笨办法

    pycharm使用小技巧_pycharm学笨办法一、常用小技巧1.设置代码字体点击左上角的“File”(文件),选择“Settings”(设置),输入“font”(字体)找到“Font”,在“Size”(大小)里面设置数字,默认是13,建议15或者18就可以了。2.设置菜单界面文字大小这里跟上面有些区别,上面是调整代码文字大小,但并没有改变菜单界面的文字大小,如果你的菜单界面文字比较小。那么你就需要去调整一下菜单界面的文字大小了,点击左上角的“File”,选择“Settings”,输入“font”,找到“Appearance”,在“Use

    2022年8月26日
    7

发表回复

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

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