/**
* ------------------------------------------------------------------------------
* @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 > )
{
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

C# 实体对象作为参数统一去除空格的更多相关文章

  1. C#序列化s实体类成Xml,去除空格、换行符以及命名空间

    序列化实体类成为一个干净的Xml,不带空格.换行符以及命名空间 /// <summary> /// 序列化成XML /// </summary> /// <typepar ...

  2. Mybatis多参数及实体对象传递

    在使用Mybatis的时候,经常会有各种各样的参数传递,不同类型,不同个数的参数. 先上个例子:     public List<LifetouchRelease> findOfficeL ...

  3. Web API 实体对象Get请求参数为null

    实体对象前加上 [FromUri] 特性

  4. js去除空格12种方法

    注:本文非本人原著:原文作者: 黄卉  <js去除空格12种方法> //JS去除空格的方法目前共有12种: //实现1 String.prototype.trim = function() ...

  5. Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer 关于Newtonsoft.Json,LINQ to JSON的一个小demo mysql循环插入数据、生成随机数及CONCAT函数 .NET记录-获取外网IP以及判断该IP是属于网通还是电信 Guid的生成和数据修整(去除空格和小写字符)

    Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer   Advanced Installer :Free for 30 da ...

  6. mybatis-generator 动态生成实体对象、dao 以及相关的xml映射文件

    .新建maven空项目 2.修改pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <proje ...

  7. JavaScript去除空格的三种方法(正则/传参函数/trim)

    方法一: 个人认为最好的方法.采用的是正则表达式,这是最核心的原理. 其次.这个方法使用了JavaScript 的prototype 属性 其实你不使用这个属性一样可以用函数实现.但这样做后用起来比较 ...

  8. C# Emit动态代理生成一个实体对象

    /// <summary> /// 使用Emit动态代理收集实体信息 /// </summary> /// <typeparam name="T"&g ...

  9. 无线客户端框架设计(5.1):将JSON映射为实体对象(iOS篇)

    iOS开发人员已经习惯于将JSON转换为字典或者数组来进行操作了,接下来我要做的事情,可能匪夷所思,但是,对WP和Android开发人员而言,他们更倾向于将JSON转换为实体对象进行操作. 我所设计的 ...

随机推荐

  1. Rust中的结构体及方法语法

    这个可以和类作比较,或是go当中的方法比较. #[derive(Debug)] struct Rectangle { width: u32, height: u32, } impl Rectangle ...

  2. pytest文档30-功能用例与自动化用例完美对接(allure)

    前言 做自动化做久了,经常会思考一个问题,到底别人是怎么做的自动化,跟自己的有啥不一样,看过不少书和资料,都是停留在demo的层面. 真正把自动化做的好的大牛又不屑于分享自己的劳动成果,所以大部分情况 ...

  3. 201871010106-丁宣元 《面向对象程序设计(java)》第十一周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第十一周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...

  4. 201871010133-赵永军《面向对象程序设计(java)》第十四周学习总结

    201871010133-赵永军<面向对象程序设计(java)>第十四周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  5. 【Java】Spring

    AnnotationConfigApplicationContext:从一个或多个基于Jav a的配置类中加载Spring应用上下文.AnnotationConfigWebApplicationCon ...

  6. Spring Cloud微服务安全实战_4-4_OAuth2协议与微服务安全

    接上篇文章,在这个流程中,PostMan可以代表客户端应用,订单服务是资源服务器,唯一缺少的是 认证服务器 ,下面来搭建认证服务器 项目结构: Pom.xml : DependencyManager ...

  7. map的基本操作

    向map添加元素: 因为map是不允许出现重复关键字的,所以如果重复插入键相同的元素后面的元素是不会插入成功的,下面是一个验证程序: #include<iostream> #include ...

  8. MySQL实战45讲学习笔记:第十一讲

    一.如何在邮箱这样的字段上建立合理的索引 现在,几乎所有的系统都支持邮箱登录,如何在邮箱这样的字段上建立合理的索引,是我们今天要讨论的问题. 假设,你现在维护一个支持邮箱登录的系统,用户表是这么定义的 ...

  9. [LeetCode] 263. Ugly Number 丑陋数

    Write a program to check whether a given number is an ugly number. Ugly numbers are positive numbers ...

  10. oracle--DG监控脚本

    conn sys@oracle01 as sysdba column dest_name format a30 column destination format a20 column MEMBER ...