zoukankan      html  css  js  c++  java
  • 一行代码添加GetList、GetSingle、Add、等数据库操作方法

    常见的服务接口只需要继承基类就可以使用了

    引用如下:

    public interface IThemePageService : IDynamicService<ThemePage> {
     }

    就可以使用 上面的任何方法了

    Resolve<IThemeConfigService>().GetList(r=>r.AppName=="User")

    一、获取当条纪录 T GetSingle(Expression<Func<T, bool>> predicate) 
      
    其中predicate为lamad表达式,可以根据任何条件获取任何值

    var user=GetSingle(r=>r.UserName==“zhongku”)  //根据用户名获取用户
    var user=GetSingle(r=>r.Id==15) //根据用户ID获取用户

    二、获取列表纪录  IEnumerable<T> GetList(Expression<Func<T, bool>> predicate = null, Expression<Func<T, bool>> sortOrder = null);

     var list= GetList();

    三、获取值 GetValue

    定义

    Object GetValue(Expression<Func<T, bool>> predicate,Func<T, object> selector);

    示列一:获取用户名

     var user = Resolve<IUserService>().GetValue(r => r.Id== "12", r => new User { UserName = r.UserName });
     var name = user.ToClass<User>().UserName;

    示列一:获取用户名列表

     四、新增数据 Add

    Resolve<IWidgetService>().Add(widgetInFile);

    五、更新数据 Update

    Resolve<IWidgetService>().Update(widgetInFile);

    六、新增或更新数据AddOrUpdate
    定义:ServiceResult AddOrUpdate(T model, Expression<Func<T, bool>> predicate);

    其中Lamda表达式predicate为真的时候,更新数据,否则新增数据

     Resolve<IWidgetService>().AddOrUpdate(widgetInFile,r=>r.Key==info.Key);

     predicate 为判断条件,比如Id>0

     Resolve<IWidgetService>().AddOrUpdate(widgetInFile,config.Id>0);
    
  • 相关阅读:
    cenos7 安装samba
    Cenos7 学习笔记
    mysql学习笔记(一)
    Qt 程序打包发布总结 转
    主机名由localhost变成bogon是怎么回事,怎样变回localhost这个名字?
    Heap Size 与 Stack Size
    数据字节对齐案例
    C语言进阶日志二
    位带操作
    Stm32高级定时器(转自:luowei_memory)
  • 原文地址:https://www.cnblogs.com/zkcloud/p/5631519.html
Copyright © 2011-2022 走看看