• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

gisoracle

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

比较两个object对象属性不同

        private string objtostr(object obj)
        {
            if (obj == null) return "None";
            return obj.ToString();
        }
        private void compare(object a1, object a2)
        {

            List<string> pList = new List<string>();

            foreach (System.Reflection.PropertyInfo p in a1.GetType().GetProperties())
            {
                string objname = p.Name;

                string value1 = objtostr(p.GetValue(a1));
                string value2 = getValue(a2, objname);
                if (value1 != value2)
                {

                    pList.Add(string.Format("属性:{0} Value:{1}!={2}", objname, value1, value2));
                }
            }
            ylbasicpub.YLCover.write(@"e:\1.txt", pList);
        }

        private string getValue(object t, string name)
        {
            return objtostr(t.GetType().GetProperty(name).GetValue(t, null));
        }
        private void button1_Click(object sender, EventArgs e)
        {
            compare(button1, button2);
        }

 

posted on 2022-05-13 14:14  gisai  阅读(117)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3