zoukankan      html  css  js  c++  java
  • 实体类相同属性间赋值与如何判断实体类中是否所有的字段都为null

    1,实体类相同属性间赋值
    /// <summary>
            /// 将实体2的值动态赋值给实体1(名称一样的属性进行赋值)
            /// </summary>
            /// <param name="model1">实体1</param>
            /// <param name="model2">实体2</param>
            /// <returns>赋值后的model1</returns>
            protected static T1 BindModelValue<T1, T2>(T1 model1, T2 model2) where T1 : class where T2 : class
            {
                if (model2 != null)
                {
                    Type t1 = model1.GetType();
                    Type t2 = model2.GetType();
                    PropertyInfo[] property2 = t2.GetProperties();
                    //排除主键
                    List<string> exclude = new List<string>() { "Id" };
                    foreach (PropertyInfo p in property2)
                    {
                        if (exclude.Contains(p.Name)) { continue; }
                        t1.GetProperty(p.Name)?.SetValue(model1, p.GetValue(model2, null));
                    }
                    return model1;
                }
                return null;
            }
    View Code
    2、判断实体类中是否所有的字段都为null
     public static Boolean IsPropNull(Object obj)
            {
                Type t = obj.GetType();
                PropertyInfo[] props = t.GetProperties();
                foreach (var item in props)
                {
                    //排除主键id
                    if (item.Name == "Id") { continue; }
                    //一旦有不为null的值,就返回true
                    if (item.GetValue(obj) != null)
                    {
                        return true;
                    }
                }
                return false;
            }
    View Code
  • 相关阅读:
    kubernetes部署1.15.0版本
    搭建时间服务器
    创建mysql容器
    制作带sshd功能的centos镜像
    容器操作
    镜像制作
    elk日志系统
    k8s基于canel的网络策略
    k8s的flannel网络插件配置
    k8s搭建WebUI--Dashborad管理界面
  • 原文地址:https://www.cnblogs.com/wsl2011/p/11098229.html
Copyright © 2011-2022 走看看