問題タブ [linq-to-xml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
4897 参照

c# - 名詞クラスを使用せずにSilverlightでXMLをバインドする

XMLの単純なチャンクがあるとしましょう:-

このXMLをSilverlightでフェッチしたので、このilkeのXAMLとバインドしたいと思います:-

これで、LINQを使用してXMLと名詞クラスに簡単にバインドできます。-

このクラスなしでそれを行うことはできますか?

つまり、Silverlightコードと入力XMLの間の結合は、XAMLのみに制限され、他のソースコードはitem要素の属性のセットに依存しません。

編集:XSDの使用が提案されていますが、最終的には同じ量になります。XSD->生成されたクラス。

編集:匿名クラスは機能しません。Silverlightはそれらをバインドできません。

編集:これは双方向である必要があります。ユーザーは値を編集できる必要があり、これらの値は最終的にXMLになります。(上記のサンプルでは、​​元のTextBlockをTextBoxに変更しました。)

0 投票する
3 に答える
19993 参照

c# - LinqToXml を使用したフィルターで (属性ごとに) 一意の XElement を選択する

次のような XML ドキュメントがあります。

ここで、linq クエリを使用して、指定されたカテゴリに属する​​すべての一意の所有者 (実際には所有者の属性値のみが必要です) を取得したいと考えています。私の例では、cat 1 のクエリは 9 と 14 を含むリストを返します。Linq 構文はラムダよりも優先されます。前もって感謝します ;)

0 投票する
7 に答える
5673 参照

c# - 初心者 LINQ の質問: LINQ クエリでページングは​​可能ですか?

Linqクエリで「ページング」機能を使用することは可能ですか? 次のような XML があるとします。

ページング機能を実装したい場合、11 番目の要素で開始し、20 番目の要素で終了するように、LINQ クエリにオフセットを提供できますか? もしそうなら、データが XML ではなくオブジェクトのリストだった場合、クエリは何か違うでしょうか?

0 投票する
2 に答える
1138 参照

html - LINQ to XML と HTML を連携させるにはどうすればよいですか?

私はhtmlテーブルを持っています

人の結果が複数行ある場合があります。各行を調べて、名前と電子メール情報を抜き出し、その他の処理を実行できるようにしたいと考えています。データをデータグリッドに入れ、場合によってはデータベースに入れます。

私の質問は、これをどうやって行うのですか?

それを XElement に入れることはできますが、ここからどこに行けばよいのかよくわかりません!

ありがとう!

0 投票する
1 に答える
3294 参照

c# - XML ドキュメントを読み取るときに XComment を使用するにはどうすればよいですか?

<!-- -->次の行を使用して、XML ファイルの上部近くに" " で囲まれたコメントがある場合とない場合がある XML ドキュメントを読み取ります。

コメントを読み込んで文字列として保存するにはどうすればよいですか?

私はこれを MS Visual Studio C# で行っています。

「XComment」と呼ばれるものがあることは知っていますが、XML を読み取るときにそれを使用する簡単な例が見つかりません (新しい XML ファイルを作成する例しか見つかりません)。

-アディーナ

0 投票する
4 に答える
133729 参照

c# - XML 属性の変更方法

C# を使用して、XML ファイル内の要素の属性を変更するにはどうすればよいですか?

0 投票する
7 に答える
46154 参照

c# - XDocument.Load() でロードする前に、ファイルが有効な XML ファイルかどうかをテストするにはどうすればよいですか?

次のように、C# アプリケーションに XML ドキュメントを読み込んでいます。

ただし、その前に、ファイルが存在することを確認するためにテストを行います。

しかし... XDocument.Load() の前にファイルをテストして、有効な XML ファイルであることを確認する (簡単な) 方法はありますか? つまり、ユーザーが誤ってファイル ブラウザーで別のファイルをクリックして、たとえば .php ファイルを読み込もうとすると例外が発生する可能性があります。

私が考えることができる唯一の方法は、それを StreamWriter にロードし、最初の数文字でテキスト検索を実行して、「

ありがとう!

-アディーナ

0 投票する
3 に答える
3280 参照

c# - 配列または XML 内の値の頻度を見つける (C#)

XML フィード (制御していない) があり、ドキュメント内の特定の属性値のボリュームを検出する方法を見つけようとしています。

また、XML を解析し、属性を配列に分離しています (他の機能用)。

これが私のXMLのサンプルです

各att1値に基づいてボリュームノードを見つけたいです。Att1 の値が変わります。att1 値の頻度がわかったら、そのノードの att2 値を取得する必要があります。

上位 4 つの項目を見つけて、それらの属性の値を取得する必要があります。

これらはすべて、C# コード ビハインドで行う必要があります。

Javascript を使用していた場合、連想配列を作成し、att1 をキーに、頻度を値にします。しかし、私はC#が初めてなので、これをC#で複製する方法がわかりません。

したがって、最初に XML 内の一意の att1 値をすべて見つける必要があると思います。私はこれを使用してこれを行うことができます:

次に、各一意の att1 値をドキュメント全体と比較して、変数や配列、またはその他のデータ セットに格納されているボリュームを取得する方法に行き詰まります。

最終的に使用したスニペットは次のとおりです。

ご助力いただきありがとうございます!

0 投票する
2 に答える
686 参照

c# - XPathExpression の結果を保存して、先祖構造を持つ XML を分離する方法は?

さまざまな深さレベルに存在するいくつかのノードの XPathExpression 選択を使用して、大きな XML ファイルを解析しています。

選択したノードを個別の XML ファイルにエクスポートし、すべての直接の祖先ノード (およびそれらの属性) を保持する最も簡単な方法は何ですか? C# が推奨されます。

ソース XML の例:

「c」ノードに対するフィルタリングに期待されるターゲット XML

編集: XPathExpression と XPathNodeIterator を使用しているのは、特定のノードを結果 XML に含める必要があるかどうかをテストするための追加のロジックがあるためです。XPathExpression だけでは十分ではありません。基本的に、一致する XPathNavigator 要素の配列があり、祖先構造を使用して XML に保存します。

0 投票する
1 に答える
1060 参照

linq - LINQ to XML の更新 - 複数の同時リーダー/ライターをどのように処理しますか?

データ ストレージに XML を使用する古いシステムがあります。別のミニプロジェクトにデータを使用する予定で、データのクエリ/更新に LINQ to XML を使用したいと考えていました。しかし、自分で処理する必要があるかどうかわからないシナリオが 2 つあります。

1- 次のコードに似たものがあり、2 人が同時に Save() を押した場合はどうなりますか? LINQ to XML は、保存する前にファイルが再び使用可能になるまで待ちますか?それとも単にスローしますか? 必要がない限り、ロックを入れたくありません:)

2- ドキュメントを Load() する場合は、特定のノードの下にエントリを追加してから、Save() をクリックします。別のユーザーがすでにそのノードの下に値を追加した場合 (Load() をヒットしたため)、さらに悪いことにノードを削除した場合はどうなりますか?

もちろん、これらの問題を回避することはできますが、回避する必要があるかどうかを教えてくれるドキュメントは見つかりませんでした。少なくとも最初のものは、確実にテストするには少し面倒です。