首页 > 编程语言 >C#获取对象实体的键值对信息

C#获取对象实体的键值对信息

时间:2023-05-24 09:45:58浏览次数:36  
标签:DataCircular C# GetValue 获取 键值 kv new property

 /// <summary>
    /// 键值对
    /// </summary>
    public class Kv
    {
        /// <summary>
        /// 键
        /// </summary>
        public string Key { get; set; }
        /// <summary>
        /// 值
        /// </summary>
        public string Value { get; set; }

    }

  

List<Kv> kvs = new List<Kv>();
DataCircular circular = new DataCircular();
// 获取DataCircular实体的所有属性键和值
Type type = circular.GetType();
PropertyInfo[] properties = type.GetProperties();
foreach (PropertyInfo property in properties)
{
    Kv _kv = new Kv();
    _kv.Key = property.Name;
    if (property.GetValue(data) is double)
    {
        _kv.Value = ((float)Convert.ToDouble(property.GetValue(data))).ToString("f2");
    }
    else {
        _kv.Value = property.GetValue(data).ToString();
    }
    
    kvs.Add(_kv);
}

 

标签:DataCircular,C#,GetValue,获取,键值,kv,new,property
From: https://www.cnblogs.com/soulsjie/p/17427113.html

相关文章

  • 华三(H3C)交换机做堆叠-实测可用
    前提:交换机支持堆叠,而且两台交换机型号要一样,否则会出问题1配置前先不用插上堆叠线(1)配置DeviceB# 将DeviceB的成员编号配置为2,并重启设备使新编号生效。<Sysname>system-view[Sysname]irfmember1renumber2RenumberingthememberIDmayresultinconfigurati......
  • 关于c#原生sql的封装
     //1将实体对象动态转换为原生sql语句(增,删,改,查),查暂时只有单表查询,多实体的动态生成暂时还没想出来usingMicrosoft.EntityFrameworkCore;usingMicrosoft.EntityFrameworkCore.Metadata.Internal;usingMicrosoft.Extensions.Hosting;usingMISSION.Entitys;usingMISSION......
  • 修改docker容器网络
    ###解除容器绑定的网络网络名称root_default容器名称root_redis_1dockernetworkdisconnectroot_defaultroot_redis_1##删除原先的网络dockernetworkrmroot_default##重新创建容器网络dockernetworkcreate--subnet=172.22.16.0/24root_default7d40e0be1fcade91f......
  • 2023(ICPC)江西省赛I题题解
    I.Tree题意:两种操作,操作1:将一棵树一条路径上的边权异或上一个数,操作2:或者询问一个点周围所有边权的异或和。题解:首先,异或有一个性质A⨁A=0⇒A⨁B⨁A=B在进行操作一时,对X到Y的简单路径上的每一条边权异或,会是这样的情况X_w1_Z_w2_P_w3_Y,根据上面......
  • TCP/IP 压包数据问题。
    client中定义data_len=recv_packet.head_union.head.total_length-NET_PACKET_HEAD_LEN;net_pack.pdata=newchar[data_len];用memcpy(net_pack.p_data,recv_packet.p_data,data_len)。打印recv_packet.p_data得到的值是正确回传的,但是通过memcpy复制到net_pack.p_data的......
  • idea中trycatch快捷键是什么
    https://m.baidu.com/sf?pd=topone_trustpaper&resource_id=55858&word=idea%E4%B8%ADtrycatch%E5%BF%AB%E6%8D%B7%E9%94%AE%E6%98%AF%E4%BB%80%E4%B9%88+&ext=%7B%22url%22%3A%22https%3A%5C%2F%5C%2Fwww.jianshu.com%5C%2Fp%5C%2Fb4f35762ae0d%22%2C%22srcid%22......
  • SystemVerilog for Design Edition 2 Chapter 6
    SystemVerilogforDesignEdition2Chapter6TheVeriloglanguageprovidesageneralpurposeproceduralblock,calledalways,thatisusedtomodelavarietyofhardwaretypesaswellasverificationroutines.Becauseofthegeneralpurposeapplicationof......
  • GitlabCI学习笔记之二:GitLabRunner pipeline语法
    1.pipeline语法之语法校验进入项目中,点击CI/CD下pipeline页面中CIint 输入pipeline内容,点击Validate2.pipeline语法之job在每个项目中,我们使用名为.gitlab-ci.yml的YAML文件配置GitLabCI/CD管道。这里在pipeline中定义了两个作业,每个作业运行不同的命令。命令可以......
  • 打卡 c语言趣味编程 求勾股数
    问题描述:求100以内的所有勾股数。所谓勾股数,是指能够构成直角三角形三条边的三个正整数(a,b,c)。思路:可以通过for循环遍历范围内每个可能的值,在每次循环中,调用函数检查当前的三个数是否满足勾股定理。如果满足,将其打印出来。流程图:for循环代码实现:1#include......
  • Discourse 如何配置 MAXMIND 来对 IP 地址反向查询
     【配置MAXMIND,Discourse需要重新构建,这将会导致服务中断。】什么是MAXMIND和为什么我们需要使用这个服务Discourse使用 MAXMIND 来通过IP地址反向查询具体的物理地址。如果Discourse没有配置Maxmind’s数据库,我们看到的配置信息如下:或者在对Discourse容......