0

次のように、Linq-To-XML を使用して XDocument を作成しています。

Order order = GetOrder();

XDocument doc = new XDocument(
    new XElement("purchaseOrder",
        new XElement("Name", order.Name),
        new XElement("Address", order.Address),
        new XElement("Shipper", order.Shipper)
    )
);

そのため、注文に配送業者がなく、null になる場合があります。その場合、Shipper 要素をまったく含めたくありません。

ドキュメントを作成するときに、コード内でインラインで行うにはどうすればよいですか?

4

3 に答える 3

3

一度にすべてを形成するのではなく、部分的に xml を形成します。(読みやすく、デバッグしやすい)

XDocument doc = new XDocument();

var order = new XElement("purchaseOrder",
                new XElement("Name", order.Name),
                new XElement("Address", order.Address));

if(order.Shipper!=null) order.Add(new XElement("Shipper", order.Shipper));

doc.Add(order);
于 2013-09-03T23:06:02.553 に答える