c# 反射+类型转换

方法一:typeConverter数据转换 这个方法还没测试过,留作备用

C# TypeConverter 数据转换 - 顺风车 - 博客园 (cnblogs.com)

https://www.cnblogs.com/i-blog/p/3548359.html

方法二:c#中Convert.ChangeType的意义 目前使用的该方法;

学习链接1:

https://blog.csdn.net/joyhen/article/details/41040767

学习链接2:(重点)

C#类型转换之利用反射将未知类型数据转换成与对象属性一致的类型并赋值_MGP_812的博客-CSDN博客_c# 反射类型转换

https://blog.csdn.net/weixin_44077303/article/details/119049118

 1·

Int16 a = new Int16();
Type b = a.GetType();
Int32 c = new Int32();
var val = Convert.ChangeType(c, b);

//定义类
public class MyClass
{
   public int Property1 { get; set; }
}
public class MyClass1
{
   public string Property1 { get; set; }
}

调用:

MyClass a = new MyClass();
MyClass1 c = new MyClass1();
c.Property1 = "2";
a.Property1 = 1;
Type b = c.GetType();
var d = b.GetProperty("Property1");

var val = Convert.ChangeType(a.Property1, d.PropertyType);

 

posted @ 2022-12-03 08:58  rossi努力努力  阅读(529)  评论(0编辑  收藏  举报