根据查询实体获取指定返回列的值

一步步完善并优化自己的ORM框架功能

复制代码
[新增]
/// <summary>
        /// 根据查询实体获取指定返回列的值
        /// </summary>
        /// <typeparam name="SearchT">查询实体类</typeparam>
        /// <typeparam name="ResultT">返回实体类</typeparam>
        /// <param name="searchEntity">查询实体</param>
        /// <param name="resultEntity">返回实体</param>
        /// <param name="dataBaseName">库名</param>
        /// <param name="tableName">表名</param>
        /// <param name="selectExpressions">返回属性表达式</param>
        /// <returns>sql参数集合</returns>
        public static List<ResultT> GetListBySelectExpression<SearchT, ResultT>(SearchT searchEntity, ResultT resultEntity, string dataBaseName, string tableName = "",
            params Expression<Func<ResultT, object>>[] selectExpressions)
            where ResultT : EntityBase, new()
        {
            //返回的结果集
            List<ResultT> resultList = new List<ResultT>();
            string sql = string.Empty;
            Dictionary<string, PropertyInfo> propertieList = GetProperties(resultEntity.GetType());
            var pars = GetQuerySqlBySelectExpression(searchEntity, resultEntity, out sql, tableName, selectExpressions);
            if (!string.IsNullOrEmpty(sql) && pars != null && pars.Count > 0)
            {
                resultList = GetExecuteResultTesk<ResultT>(sql, pars, propertieList, dataBaseName);
                pars.Clear();
            }

            return resultList;
        }
复制代码

 

posted @   baivfhpwxf  阅读(871)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示