Я хочу создать окно, в котором пользователь может сопоставить поля из файла XML с полями или свойствами класса, а затем получить доступ к сопоставлению для импорта той же структуры XML. Например, у меня есть класс заказа:
public class Order
{
[Key]
public string OrderId { get; set; }
public int Status { get; set; }
public DateTime ImportDate { get; set; }
}
И XML:
<Order>
<Header>
<OrderNo>4711</OrderNo>
<OrderStatus>20</OrderStatus>
<OrderConfirmed>1</OrderConfirmed>
<OrderReference>test</OrderReference>
</Header>
</Order>
Теперь моя идея - использовать простой метод Linq to XML:
var ordersInXml = xDoc.Root
.Elements("Header")
.Select(x => new Order()
{
OrderId = (string)x.Descendants("OrderNo").First().Value,
OrderStatus = (string)x.Descendants("OrderStatus").First().Value
})
.ToList();
Я хочу иметь возможность каким-то образом создать метод, который сопоставляет атрибуты XML с полями моего класса. Например, получить доступ к словарю в моем коде Linq to XML?
Я понятия не имею, как этого добиться. Есть идеи получше?