• EF操作增删改查


     lianxiEntities db = new lianxiEntities();//上下文的入口

                #region //EF Added

                //UserInfo user = new UserInfo();
                ////user.UserInfoId = 1;自增长不用赋值
                //user.UserInfoName = "张三1";
                //user.SubTime = DateTime.Now;


                ////在这里只是告诉上下文去要保存此实体
                //db.UserInfo.AddObject(user);

                //UserInfo user1 = new UserInfo();
                ////user.UserInfoId = 1;自增长不用赋值
                //user1.UserInfoName = "张三2";
                //user1.SubTime = DateTime.Now;


                ////在这里只是告诉上下文去要保存此实体
                //db.UserInfo.AddObject(user1);


                ////在这里才真正的去保存到数据库,执行Sql脚本
                //db.SaveChanges();
                #endregion


                #region //查询UserInfoId=2的userinfo实体
                //在下面u非常类似于foreach(var item in xx)
                var user1 = (from u in db.UserInfo
                            where u.UserInfoId == 2
                             select u).FirstOrDefault<UserInfo>();//推荐使用这种方式,不抛异常,如果一个应用程序使用try{} catch(){}如果代码抛出异常的时候也就是catch的时候会比较消耗资源,所有最好不用SingleOrDefault


                //var user2 = (from u in db.UserInfo
                //            where u.UserInfoId == 2
                //             select u).First<UserInfo>();//用First,如果集合里面是空的话就会报一个异常


                //var user3 = (from u in db.UserInfo
                //             where u.UserInfoId == 2
                //             select u).SingleOrDefault<UserInfo>();
                ////SingleOrDefault返回单个或者是默认值


                //var user4 = (from u in db.UserInfo
                //             where u.UserInfoId == 2
                //             select u).Single<UserInfo>();


                //


                //FirstOrDefault<UserInfo>();如果集合里面有多条数据则返回第一条,如果没有则返回默认值

                #region //update

                  //在上面已经把实体查询出来了,如果要修改的话只需要改属性,然后在保存就可以了
                //查询出来的实体,默认是被上下文跟踪的
                user1.UserInfoName = "zhangsan";
                db.SaveChanges();


                #endregion


                #region //delete
                   db.UserInfo.DeleteObject(user1);
                   db.SaveChanges();
                #endregion
             
                Console.WriteLine(user1.UserInfoName);

                #endregion

  • 相关阅读:
    堆排序
    我花了一年时间来学机器学习
    一个由进程内存布局异常引起的问题
    老曹眼中的Linux基础
    Select模型原理
    socket编程的select模型
    [插件] 如何在一个页面中使用多个SWFUpload对象上传文件
    [算法] 拖动排序
    [算法] 应用版本更新逻辑
    [oracle] 如何使用myBatis在数据库中插入数据并返回主键
  • 原文地址:https://www.cnblogs.com/pangblog/p/3238982.html
Copyright © 2020-2023  润新知