当前位置:  开发笔记 > 编程语言 > 正文

C#类转换为类

如何解决《C#类转换为类》经验,为你挑选了1个好方法。

假设我有两对具有完全相同属性的两个不同类.

public class Class1
{
    public int IntValue { get; set; }
    public string StringValue { get; set; }
}

public class Class2
{
    public int IntValue { get; set; }
    public string StringValue { get; set; }
}

是否有可能创建一个方法,将任何object作为参数并返回object我传入的位置,Class1并返回Class2或反之亦然,而不知道将传入哪个类?我们可以假设这两个类将共享完全相同的属性.我们需要定义在Type调用方法时返回的内容.



1> D Stanley..:

在编译时不知道类型的唯一方法是使用反射:

获取每种类型的所有属性的列表

按名称查找匹配的属性

对于每个属性:

从对象1获取值

设置对象2的值(必要时进行转换)

像AutoMapper这样的工具开箱即用,但在从一种类型映射到另一种类型时几乎总是需要某种自定义配置.

如果您有两种类型具有完全相同的属性和类型,那么您可能需要公共属性的基类型?

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有