• C# 实体对象作为参数统一去除空格


    /**
     * ------------------------------------------------------------------------------
     *  @Copyright information:     F-Gang制作 ®    版权所有 2019 ©
     * 
     *  @Author:            F-Gan    冯刚
     * 
     *  @Machine:           DESKTOP-MTP43T5
     * 
     *  @Creation Time:     2019/7/6 12:46:01
     * 
     *  @Descriptive:        此代码由程序自动生成
     * 
     *  @Powered By:         技术支持    QQ:565728589
     * 
     *  @System Version Number:    4.0.30319.42000
     * ------------------------------------------------------------------------------
     * */
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Reflection;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Management.Utility
    {
        /// <summary>
        /// 过滤帮助类
        /// </summary>
        public static class FilterHelper
        {
            #region 字符串类型去除空格
            /// <summary>
            /// 过滤字符类型的空格
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="t"></param>
            /// <returns></returns>
            public static T ObjTrimString<T>(T t)
            {
                try
                {
                    if (t == null)
                        return default(T);
                    Type type = t.GetType();
                    PropertyInfo[] props = type.GetProperties();
    
                    Parallel.ForEach(props, p =>
                    {
                        if (p.PropertyType.Name.Equals("String"))
                        {
                            var tmp = (string)p.GetValue(t, null);
                            p.SetValue(t, tmp.Trim(), null);
                        }
                    });
    
                    return t;
                }
                catch
                {
                    return default(T);
                }
            }
    
            /// <summary>
            /// 对象去除去除空格
            /// </summary>
            /// <param name="obj">对象</param>
            /// <returns></returns>
            public static object ObjTrimString(object obj)
            {
                try
                {
                    Type type = obj.GetType();
                    PropertyInfo[] props = type.GetProperties();
    
                    Parallel.ForEach(props, p =>
                    {
                        if (p.PropertyType.Name.Equals("String"))
                        {
                            var tmp = (string)p.GetValue(obj, null);
                            p.SetValue(obj, tmp.Trim(), null);
                        }
                    });
    
                    return obj;
                }
                catch
                {
                    return obj;
                }
            }
    
            /// <summary>
            /// 字典objcet值去空格
            /// </summary>
            /// <param name="pairs"></param>
            /// <returns></returns>
            public static Dictionary<string,object> KeyValuePairsTrim(Dictionary<string, object> pairs)
            {
                Dictionary<string, object> valuePairs = new Dictionary<string, object>();
                if (pairs != null && pairs.Count > 0)
                {
                    foreach (var pair in pairs)
                    {
                        valuePairs.Add(pair.Key, ObjTrimString(pair.Value));
                    }
                }
                else
                    return pairs;
                return valuePairs;
            }
            #endregion
        }
    }

    作者地址:https://www.cnblogs.com/FGang/p/11142430.html

  • 相关阅读:
    kuangbin_ShortPath P (HDU 4725)
    kuangbin_ShortPath O (LightOJ 1074)
    方法的定义格式
    A Better Finder Rename 9.40 Key
    [iOS] 初探 iOS8 中的 Size Class
    iOS 后台执行
    iOS7 毛玻璃效果
    PhpStorm8 注册码
    [教程] 【终极开关机加速!!】手把手教你加速Mac的开关机速度。(经验证适用10.10!)
    iOS 取应用版本
  • 原文地址:https://www.cnblogs.com/FGang/p/11142430.html
Copyright © 2020-2023  润新知