問題タブ [xslcompiledtransform]

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 投票する
3 に答える
5289 参照

xslt - XslCompiledTransform.Transformは、"""を実際の引用符に置き換えます

このようなことをする:

どこ

そして、文字列「"」が毎回 結果ファイルでは、実際の引用符に置き換えられます。
なぜこれが起こるのか理解できません...

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

.net - デフォルト以外の名前空間を持つ XML ファイルと XSL ファイルを操作する場合、.NET が理解できる XPath 式を記述する適切な方法は何ですか?

.NET (または少なくとも私が使用している .NET のバージョン) に関しては、既定以外の名前空間を持つ XML ドキュメントからデータをクエリする場合、少なくとも 2 つの選択肢があることを認識しています。 :

最近、私は XSLCompiledTransform クラスを扱っていて、デフォルト以外の名前空間を持つ XML ファイルからデータを読み取る際に同様の問題を経験しました。

実際の XSL ファイルを作成する人は、local-name() 関数を使用する必要があることを知らない可能性があり、作業する XML ファイルを制御できない可能性があるため、コードごとに、順番に何ができるでしょうか。フォーム (/node0/node1/node2/etc) の xpath 式が XSLCompiledTransform クラスによって適切に解釈されることに耐えるには?

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

xml - この XSL コードの何が問題になっていますか?

変換を適用すると、例外が発生します。式はノード セットに評価される必要があります。

ここで、if ステートメントを最初のループのレベルに配置すると、変換を適切に適用できます。

「$a0 | $a1 | $a2」という式がノードセットと見なされないことが問題である場合、XSLT 1.0 を使用して同様の目標を達成するにはどうすればよいでしょうか?

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

c# - XSLT と C# を使用して画像 (Byte[]) を Word doc に挿入する

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

また、各ジョブをループする XSLT ファイル。私の問題は、byte[] として保存されている画像を挿入するにはどうすればよいですか? これらはデータベースに保存されるだけで、アプリケーションで生成されるため、ファイルは作成されません。私のC#コードは次のようになります。

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

xslt - 入力 XML と変換 XSL が文字列の場合、XslCompiledTransform を使用するにはどうすればよいですか。変換結果を文字列として取得するにはどうすればよいですか?

1 つのストリング inputXMLString と、transformXSLString という名前の変換 XSL を含む 2 番目のストリングがあります。どちらも正しくフォーマットされた xml です。

結果を文字列としても取得するために、C# で XslCompiledTransform を使用して変換を実行する方法、たとえば、resultXMLString としましょう。

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

.net - XmlDocument から XmlDocument への XslCompiledTransform

次の VB.NET コードを使用して、XML を新しい XML に変換し、処理を続けます。これは 1 回限りのプロセスであり、複数回行われるものではないため、私が見る限り、キャッシュから得られる効率はありません。

コードは機能しますが、パフォーマンスの問題が発生しています。パフォーマンスの問題が XSLT に関連している可能性があることに感謝します。

また、特に 64 ビット環境で、XslCompiledTransform でパフォーマンスの問題を抱えている開発者のインスタンスも発見しました。これはバグである可能性があります ( http://connect.microsoft.com/VisualStudio/feedback/details/508748 ) 。

XSLT パフォーマンスの問題も XslCompiledTransform の問題も私の管理下にはありませんが、私のコードに問題がある可能性はあります。変換を行う方法が、必要なものに対して最も効率的な方法であることを確認したいだけです。

私のコードの問題を指摘できる人はいますか?

編集: これは 1 回限りの変換であるため、ループはありません。

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

c# - xslcompiledtransform は、関数と名前空間の名前を出力します

背景: XML ドキュメントを rtf ドキュメントに変換する XSLT を開発しています。XSLT には GetImageString という msxsl:script 関数があり、指定された画像ファイルの文字列表現を返すので、画像を rtf ドキュメントに埋め込むことができます。

問題: xslCompiledTransform を xmlWriterSettings および XmlWriter と共に使用すると、変換の出力 (xsl:output method="text") にスクリプト関数の名前 (GetImageString) が含まれ、デフォルト以外のすべての名前空間のリストが含まれます。 XSL ファイル。xmlWriterSettings および XmlWriter クラスなしで XslCompiledTransform を使用すると、ファイルの先頭に BOM (バイト オーダー マーク) が挿入され、(少なくとも) MS Word rtf リーダーが混乱することを除いて、出力は正しくなります。したがって、BOM を抑制するには、XmlWritterSettings (および XmlWriter) クラスを使用する必要がありますが、埋め込まれた C# コードが呼び出されたときに出力が正しくありません。

これが私のxslファイルのスニペットです:

変換を呼び出す c# プログラムは次のとおりです。

問題のある出力は次のようになります。

{\rtf1\ansi {\fonttbl {\f1 Times New Roman;} } {\pict\wmetafile8 GetImageString xmlns:xpp="http://www.sdl.com/xpp" >xmlns:w="http:// schemas.openxmlformats.org/wordprocessingml/2006/main" >xmlns:v="urn:schemas-microsoft-com:vml" xmlns:msxsl="urn:schemas-microsoft-com:xslt" >xmlns:rend="urn :rend-scripts" 49492A00BC480000803...

(GetImageStringと名前空間のリストの周りに<と>がありますが、それを質問にフォーマットする方法を理解するのに苦労しています)

関数名と追加の名前空間を出力せずに (および BOM なしで) msxsl:script 関数を呼び出す方法を知っている人はいますか?