c# 遍历属性
public class Program
{
static void Main(string[] args)
{
TestC c = new TestC();
c.p = new Person();
c.p.value = 14124;
GetProperty(c);
Console.ReadKey();
} public static void GetProperty(Object o)
{
if(o==null)
{
return;
}
var properties = o.GetType().GetProperties();
foreach (var item in properties)
{
if (!item.PropertyType.Equals(typeof(string))
&& !item.PropertyType.Equals(typeof(int))
&& !item.PropertyType.Equals(typeof(short))
&& !item.PropertyType.Equals(typeof(long))
&& !item.PropertyType.Equals(typeof(decimal))
)
{ Console.WriteLine(item.PropertyType);
GetProperty(item.GetValue(o));
}
else
{
Console.WriteLine("{0}:{1}", item.Name, item.GetValue(o, null));
} }
}
} public class TestC
{
public Person p { get; set; }
} public class Person
{
public string name { get; set; }
public int value { get; set; }
}

c# 遍历属性的更多相关文章
- 关于js中的for(var in)遍历属性报错问题
之前遇到过这个问题,但是没找到问题的所在,将for(var i in array){} 改成了for(var i ;i<array.length;i++)循环,但是今天又遇到了,mark一下错 ...
- suoermap的object.net循环遍历属性表,从数据库取数据进行更新属性字段值
/// </summary> /// <param name="sName">图层名</param> /// <param name=&q ...
- [转] JavaScript中的属性:如何遍历属性
在JavaScript中,遍历一个对象的属性往往没有在其他语言中遍历一个哈希(有些语言称为字典)的键那么简单.这主要有两个方面的原因:一个是,JavaScript中的对象通常都处在某个原型链中,它会从 ...
- JS遍历属性和方法
引用原文:http://www.cnblogs.com/lishenglyx/archive/2008/12/08/1350573.html#undefined <script language ...
- 【转载】JavaScript中的属性:如何遍历属性
转载自:http://www.cnblogs.com/ziyunfei/archive/2012/11/03/2752905.html 在JavaScript中,遍历一个对象的属性往往没有在其他语言中 ...
- JavaScript对象遍历属性和值
原文链接:http://caibaojian.com/javascript-object-3.html 加入你输出来一个对象,但是苦于不知道里面有哪些属性和值,这个时候,你可以通过下面的代码来遍历这个 ...
- JavaScript中对象的属性:如何遍历属性
for/in 语句循环遍历对象的属性. js中获取key得到某对象中相对应的value的方法:obj.key js中根据动态key得到某对象中相对应的value的方法有二: 一.var key = & ...
- js 加载 xml 及遍历属性及内容 整理
本文旨在: js加载xml文件并读取节点信息 1 加载xml文件 var xmlDoc = loadXMLDoc("negativeData.xml"); function loa ...
- java class遍历属性
private void iterateClass(Object object) { Field[] fields = object.getClass().getDeclaredFields(); f ...
- C# Dynamic通用反序列化Json类型并遍历属性比较
背景 : 最近在做JAVA 3D API重写,重写的结果需要与原有的API结果进行比较,只有结果一致时才能说明接口是等价重写的,为此需要做一个API结果比较的工具,比较的内容就是Json内容,但是为了 ...
随机推荐
- 普通8线-3线编码器的Verilog描述及仿真
一个8线-3线编码器将8个输入线编码为3位二进制输出.当输入中的某一位为1时,输出对应的二进制编码.通常,输入中只有一个位为1,其余为0. 1.普通编码器的Verilog描述(8线-3线编码器) 1 ...
- iOS5.2.1被拒
转载请注明出处!!! 注明:应用已经上线,正在和一些已经上架的人探讨那些文件是必需的. 自从十九大之后,p2p类应用审核越发严格.经常出现好久不能上线,一直被拒的现象.近期我们公司上架一款新的应用就出 ...
- 这一次,武汉再次为AI创新“头雁”引智筑巢
我们很多人在出入机场.火车站的时候,都有过这样的经历:面对体温检测闸口,只能一个人一个人走过,缓缓通行--你是否想象过,如果一个系统能同时检测数十人且(检测结果)精准.高效,甚至最高能在一分钟内让五百 ...
- Chormium 密码管理器表单结构体说明(基于Chromium138)
这个结构体(struct PasswordForm)是 Chromium 浏览器(以及所有基于 Chromium 的浏览器,例如 Chrome.Edge 等)中密码管理器用来存储和管理单个登录凭证(即 ...
- .NET操作Word实现智能文档处理 - 内容查找替换与书签操作
如何在Word大量文档中查找并替换特定内容?如何在文档的特定位置自动插入动态内容?如何创建能够自动生成报告的智能文档系统?本文介绍的查找替换和书签操作技术,将能够轻松实现这些功能,大大提高文档处理的效 ...
- 【GitHub每日速递 251013】SurfSense:可定制AI研究神器,连接多源知识,功能超丰富!
免费开源!可复制粘贴的组件助你打造专属组件库 shadcn-ui/ui 是一个 提供精美设计.可访问性良好的UI组件和代码分发平台 的 开源前端工具库.简单讲,它是一套开箱即用的高质量界面组件,支持主 ...
- RabbitMQ的安装集群、仲裁队列配置
1 RabbitMQ集群简介 RabbitMQ 集群是一个或多个节点的逻辑分组,每个节点共享用户.虚拟主机.队列.流.交换机.绑定.运行时参数和其他分布式状态. 集群中的节点名称必须是唯一的.在集 ...
- 权威调研榜单:插头电压降测试仪实力厂家TOP3榜单好评深度解析
随着电气安全标准的不断提高,插头电压降测试仪作为电线电缆.家用电器及工业设备检测领域的关键设备,其测量精度与可靠性日益受到行业重视.本文基于对多家企业的技术实力.专利成果.检测精度标准及知名合作案例的 ...
- 在nginx中实现回源日志的功能
本文分享自天翼云开发者社区<在nginx中实现回源日志的功能>.作者:尹****聪 nginx中已经提供了访问日志的功能,主要对客户端的访问状态等进行记录,比如响应给客户端的状态码,请求u ...
- 软件神器 --- mac上的win虚拟机 之 ParallelsDesktop
https://www.parallels.com/products/desktop/?srsltid=AfmBOorBo0UcPN9-IKBOCaplt4jBxMAwF702rbd1gKz0_Bxi ...