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);
    
  • 相关阅读:
    Google官方教程之Selling In-app Products
    In-app Billing 概述
    Android SDK和ADT无法更新的解决办法
    在NGUI中高效优化UIScrollView之UIWrapContent的简介以及使用
    cocos2d-x 3.1 编译脚本android-build.py
    Storm---DirectGroup(直接分组)
    Lucene Spatial构建地理空间索引
    Log4j2日志配置
    Guava缓存使用
    Maven 多套环境配置
  • 原文地址:https://www.cnblogs.com/zkcloud/p/5631519.html
Copyright © 2011-2022 走看看