List<OrderItem>
インスタンス化中のフィールドを初期化しようとして、次のコードがありOrder
ます。私の問題は、Visual Studio が最も内側の LINQ クエリを好まないことです。from
具体的には、 、i.Element("OrderItems")
、およびについて不平を言っていselect
ます。
この方法でオブジェクトを初期化することはできませんか、それとも間違ったことをしているだけですか? ありがとう、コナー。
var orderXml = XDocument.Load("FileTest\\orders.xml");
orderXml.Descendants("Order").Do(i => orderList.Add(new Order()
{
Customer = new Customer()
{
ID = new Guid(i.Element("Customer").Element("ID").Value)
},
OrderItems = new List<OrderItem>()
{
from current in i.Element("OrderItems")
select new OrderItem() {
Product = new Product()
{
ID = new Guid(current.Element("ID").Value),
UnitPrice = current.Element("UnitPrice").Value.To<decimal>()
},
Quantity = current.Element("Quantity").Value.To<int>(),
TotalPrice = current.Element("TotalPrice").Value.To<decimal>()
}
}
}));