C# type.GetProperty使用 Type.GetProperties() 获取不到值的解决方法

C# type.GetProperty使用

Type.GetProperty 方法用于获取当前 Type 的指定属性。它接受一个字符串参数,该字符串是你要获取的属性的名称。如果找到了匹配的属性,它会返回一个 PropertyInfo 对象;如果没有找到,它会返回 null

下面是一个使用 Type.GetProperty 方法的示例:

using System;
using System.Reflection;
 
public class Example
{
    public int PropertyOne { get; set; }
    public string PropertyTwo { get; set; }
}
 
class Program
{
    static void Main()
    {
        Type exampleType = typeof(Example);
        PropertyInfo propertyInfo = exampleType.GetProperty("PropertyOne");
 
        if (propertyInfo != null)
        {
            Console.WriteLine("Property found: " + propertyInfo.Name);
        }
        else
        {
            Console.WriteLine("Property not found.");
        }
    }
}

在这个例子中,Example 类有两个属性:PropertyOne 和 PropertyTwo。在 Main 方法中,我们使用 GetProperty 来查找 PropertyOne。如果属性存在,它会输出属性名称,否则输出 "Property not found."。

C# Type.GetProperties() 获取不到值的笔记

Type.GetProperties() 有时候会返回 0 数组

经过排查,和Type类有关

Type里的属性需要有索引器 get;set,否则将获取不到。

public class FenZhengInput
    {
        public string sInput { get; set; }
        public string code { get; set; }
    }

一定要写{get;set;},否则获取不到!!!!!! 

B b=new B();
//Type t = typeof(B);//这样也行,和下面的一样
Type t = b.GetType();
PropertyInfo propertyInfo = t.Getproperty("pro");
//第一个参数是要获取哪一个对象的属性值
string temp = propertyInfo.GetValue(b,null);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值