Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将XML结构转换为已定义的对象?_C#_Wcf - Fatal编程技术网

C# 如何将XML结构转换为已定义的对象?

C# 如何将XML结构转换为已定义的对象?,c#,wcf,C#,Wcf,我正在访问一个服务,并得到一个返回的对象,其形式为(例如) 等等,等等,你明白了。我的应用程序接收许多不同结构的不同对象。我想做的是能够有一种方法,能够将一种类型的对象映射到另一种类型 我不想做的是手动将服务对象中的所有字段映射到具有每个对象类型的域对象 比如说 Car _car = _service.FetchCar(carId) Car.Color Car.Tires.Right.Front Car.Tires.Left.Front Car.Tires.Ri

我正在访问一个服务,并得到一个返回的对象,其形式为(例如)

等等,等等,你明白了。我的应用程序接收许多不同结构的不同对象。我想做的是能够有一种方法,能够将一种类型的对象映射到另一种类型

我不想做的是手动将服务对象中的所有字段映射到具有每个对象类型的域对象

比如说

Car _car = _service.FetchCar(carId)

    Car.Color
    Car.Tires.Right.Front
    Car.Tires.Left.Front
    Car.Tires.Right.Back
    Car.Tires.Left.Back
    Car.Spoiler
如果我从服务中得到一个Car对象,我想把它映射到我自己的Car对象,如果我得到一个Table对象,我想把它映射到我自己的Table对象

有什么想法吗?

看看类似于处理这些“将所有字段从对象a复制到对象B”场景的工具

AutoMapper将自动将具有相同名称的所有字段从一个实例复制到另一个实例,您可以设置其他规则,以允许复制名称不匹配的字段(如果需要转换数据类型,还可以定义自定义转换器)

非常有用,非常有用


Marc

您的对象和服务对象如何对应?你的对象的结构是什么?大约80%是相同的…写这个映射代码是无聊和乏味的,我想避免它。我看过AutoMapper,但我不明白它是Mapper。初始化调用-我应该在这里放什么?没关系…排序好了。看到下面这篇文章,一分钱掉了下来