私は次のようにLINQを経由して読んでいるXMLののキューがあります提供します サンプルいくつかのXMLファイルでXMLLINQ XMLをListに読み込むと、不明なノードのオブジェクト参照が返されますか?
[XML Link](http://www.hattem.nl/roonline/0269/plannen/NL.IMRO.0269.OV165-/NL.IMRO.0269.OV165-VG01/g_NL.IMRO.0269.OV165-VG01.xml)
C#コード
List<String> PlanInfo = new List<string>();
XDocument xdoc = null;
XNamespace ns = null;
try
{
//List<String> PlanValuesList = new List<string>();
xdoc = XDocument.Load(gLink);
ns = xdoc.Root.Name.Namespace;
var test = (
from planInfo in xdoc.Descendants(ns + "Plan").Descendants(ns + "Eigenschappen")
from Onderdelen in xdoc.Descendants(ns + "Onderdelen")
select new
{
Naam = (string)planInfo.Element(ns + "Naam").Value ?? string.Empty,
Type = (string)planInfo.Element(ns + "Type").Value ?? string.Empty,
Status = (string)planInfo.Element(ns + "Status").Value ?? string.Empty,
Datum = (Convert.ToString(planInfo.Element(ns + "Datum").Value).IndexOf("T") > 0) ? (string)planInfo.Element(ns + "Datum").Value.Substring(0, Convert.ToString(planInfo.Element(ns + "Datum").Value).IndexOf("T")) : (string)planInfo.Element(ns + "Datum").Value ?? string.Empty,
Versie = (string)(planInfo.Element("VersieIMRO") ?? planInfo.Element("VersieGML")) ?? string.Empty,//Convert.ToString(planInfo.Element(ns + "VersieIMRO").Value) ?? String.Empty,
VersiePraktijkRichtlijn = (string)planInfo.Element(ns + "VersiePraktijkRichtlijn").Value ?? string.Empty,
BasisURL = (string)Onderdelen.Attribute("BasisURL")
}).ToList();
foreach (var item in test)
{
PlanInfo.Add(item.Naam);
PlanInfo.Add(item.Type);
PlanInfo.Add(item.Status);
PlanInfo.Add(item.Datum);
PlanInfo.Add(item.Versie);
PlanInfo.Add(item.VersiePraktijkRichtlijn);
PlanInfo.Add(item.BasisURL);
}
}
catch (Exception ex)
{
//Error reading GeleideFormulier link for the plan and manifest
throw;//Just throwing error here, as it is catched in the called method.
}
return PlanInfo;
"versieIMRO" タグ "はversieGML" となりを、私はオブジェクト参照としてエラーオブジェクトのインスタンスに設定されていません。
"versieIMRO"の代わりに "versieGML"タグがあるかどうか確認する方法を教えてください。 他のXMLではタグ名が異なる場合、どのように対処するのですか?
はどのようにあなたの 'xml'のように見えるのでしょうか? –
問題のxmlサンプルを追加しました。 –