ラムダ構文でLINQを使用してXMLフラグメントからオブジェクトのリストをロードしようとしていますが、新しいオブジェクトを作成する際にラムダ構文に問題があります。ここでLINQ to XML Lambda構文を使用してオブジェクトコレクションを設定する
は、データを保持するカスタムクラスである:私はそのようなコードを使用してみましたが
<response>
<control>
<status>success</status>
<dtdversion>3.0</dtdversion>
</control>
<operation>
<authentication>
<status>success</status>
<userid>jsmith</userid>
</authentication>
<result>
<status>success</status>
<physicianlist>
<physician>
<lastname degree="MD">Smith</lastname>
<firstname>Paul</firstname>
</physician>
<physician>
<lastname degree="DO">Smith</lastname>
<firstname>Paul</firstname>
</physician>
</physicianlist>
</result>
</operation>
</response>
:ここ
public class PhysicianInfoModel
{
string FirstName;
string LastName;
string Degree;
}
は私がからオブジェクトのコレクションをロードしようとしていたサンプルXMLであります次のように私はそれが正しいとは限りません知っているので、Visual Studioでintellisenseすべての "赤い絡み合っているライン"です。この例では、xml
は上記のXMLをロードしたXDocument
オブジェクトです。あなたのSelect()
参照個々physician
要素のコンテキストで
List<PhysicianInfoModel> nodeList = xml.Descendants("physicianlist")
.Descendants("physician")
.Select(x => new PhysicianInfoModel()
{
FirstName = x.?????,
LastName = x.????,
Degree = x.Attribute("degree") // Not working
});
ありがとうございます。私は 'x.Element(" lastname ")' – webworm