-2
    Customer cus=new customer();

from c in doc.Descendants(XName.Get("details", name))
                     select 
{
    cus.firstname =c.Element(XName.Get("to", name)).value;
}

linqのselect本体でインスタンス変数を使用する方法

こんにちは、

selectステートメント内のcustインスタンス変数名にアクセスする必要があります。

次のような新しいインスタンスを作成したくない

select new customer
    {
        cus.firstname.
    }

これで助け。

4

1 に答える 1

0

メソッドベースのアプローチを使用すると、はるかに簡単になるはずです。

cus.firstname = doc.Descendants(XName.Get("details", name))
                   .Element(XName.Get("to", name))
                   .Value;

より多くのプロパティを入力するには<details>、要素を変数に保存して後で使用できます。

var details = doc.Descendants(XName.Get("details", name)).FirstOrDefault();

if(details != null)
{
    cus.firstname = details.Element(XName.Get("to", name)).Value;
    cus.lastname= details.Element(XName.Get("from", name)).Value;
}

これにより、XMLを何度も繰り返すことがなくなります。

于 2013-02-25T17:41:35.337 に答える