• Entity Framework 小技巧—— 在EF中运行SQL命令


    1. 使用ExecuteStoreCommand:执行Update,Insert,Delete语句(返回受影响行数)

    using (SzmbEntities entity = new SzmbEntities())
    {
        var item = entity.Weatherwarnings.OrderByDescending(x => x.Id)
                    .Where(x => x.PublishTime < now.AddDays(-14))
                    .FirstOrDefault();
        if (item != null)
        {
            string sql = "Delete FROM  [Weatherwarning] where Id < @ID";
            var args = new DbParameter[] { 
            new SqlParameter { ParameterName = "ID", Value = item.Id} 
            };
            entity.ExecuteStoreCommand(sql, args);
        }
    }
    using (var ctx = new MyObjectContext())
    {
        ctx.ExecuteStoreCommand("UPDATE Person SET Name = 'Michael' WHERE PersonID = 1");
    }

    2. 查询一行一列信息

    var singleResult = db.ExecuteStoreQuery<string>("select count(*) as counts from userinfo");
    string result = string.Empty;
    foreach (var item in singleResult)
    {
        result = item;
    }
    3. 使用ExecuteStoreQuery<T> :通过sql查询返回object实体
    using (var ctx = new MyObjectContext())
    {
        var peopleViews = ctx.ExecuteStoreQuery<PersonView>("SELECT PersonID, Name FROM Person");
    }
    
    public class PersonView
    {
        public int PersonID { get; set; }
        public string Name { get; set; }
    }
    

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    java连接oracle数据库调用存储过程实现分页查询(emp为例)
    git 记录
    Angular记录
    “nth-child”选择器的优先级高于伪类选择器“:hover”
    Angular获取父组件传值-set,get
    Vue3.0路由 -- 学习笔记
    Vue学习笔记
    java-关于List删除元素的出错问题
    CSS选择器-复合选择器
    Angular 路由返回
  • 原文地址:https://www.cnblogs.com/ful1021/p/4804388.html
Copyright © 2020-2023  润新知