0

次のブロックを使用して、ファイル システムから XML ファイルを読み込むことができます。xml ファイルは SQL Server から作成されます。

var stream = Application.GetResourceStream(new Uri("XmlSource/mydata.xml", UriKind.Relative));
            try
            {
                var dataXml = XElement.Load(stream.Stream);
                foreach (var element in dataXml.Elements("Node"))
                {
                    var node = CreateNode(element, null);
                    node.Children.AddRange(GetSubNodes(element, node));
                    HierarchicalDataSource.Add(node);
                }

私はxmlファイルを作成するステップをバイパスし、データベースから直接コードからテキストとしてxmlを取得したいと考えています。そこで、次のコードを使用してデータを取得しようとしました。

var dataXml = XElement.Parse(myxml, LoadOptions.PreserveWhitespace);
            foreach (var element in dataXml.Elements("Node"))
            {
                var node = CreateNode(element, null);
                node.Children.AddRange(GetSubNodes(element, node));
                HierarchicalDataSource.Add(node);
            }

両方のインスタンスで dataXml の値をキャプチャし、メモ帳に貼り付けて、両方のファイルを比較しました。それらは内容と構造が同一でした。したがって、データの直接のソースに関係なく、dataXml は同じです。私の質問は、最初の例が機能し、2 番目の例が失敗するのはなぜですか? オプション 2 からのエラーはありませんが、オプション 1 のように階層ダイアグラムが取り込まれていないだけです。

ありがとう!

4

0 に答える 0