問題タブ [xmltextwriter]
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.
asp.net - ASP.NET IIS7.5でXMLTextReaderを使用して相対URLでXMLファイルを読み取ることは可能ですか?
Windows Server 2008R2 の IIS7.5 の ASP.NET (MVC ではない) で、相対 URL を使用して Web アプリの下のサブフォルダーから XML ファイルを読み取ることは可能ですか?
何かのようなもの:
このフォルダ階層を考えると:
私はそれを機能させることができませんでした。可能であれば、相対 URL が正しく形成されていませんか?
PS HTTP プロトコルを使用しようとしているので、ブラウザの開発者ツールのネットワーク モニタでリクエストが行われていることを確認できます。また、ファイル システムのアクセス許可の問題を回避することもできます。Windows Server 2003 では物理パスを使用して動作していましたが、そのコードは 2008R2 では動作せず、アクセス許可が必要な仮想ユーザーまたはマシン ID を特定できませんでした。IUSR と ASP.NET v4.0 アプリケーション プール ID にアクセス許可を付与しました。
c# - メモリ内に XML を作成し、別のメソッドに渡して XSLT 経由で変換します
これが私がやろうとしていることです。解決策は簡単だと思いますが、まだ見つけていません(そして、私が試してきたと信じています)。
- XML データの作成に使用したいオブジェクトがあります。(要素を作成するために XmlTextWriter を使用しています。)
- 次に、XML データを別のメソッドに渡したいと思います。
- このメソッドは XML データを取得し、それを XSLT 変換の入力として使用して HTML を取得する必要があります。
Transform メソッドは XMLReader で動作するため、基本的にはまず XmlTextWriter で何かを記述し、これを XmlReader に渡します。
もちろん、ファイルに書き込んでから再度ファイルを読み取ることもできますが、実際にファイルに書き込むのではなく、メモリ内のデータを処理する方が簡単だと思いました。
私が HtmlTextWriter を直接使用していない理由は単純です。私が理解している限り、これは .NET 4.5 でしか機能せず、さまざまな理由でプロジェクトを 4.0 にとどめる必要があります。
後で別のソースから XML を渡すオプションもあります。また、XSLT テンプレートを変更するだけで済み、実際のコードを変更する必要がないため、後で HTML フォームのレイアウトを簡単に変更できるようになります。
c# - XmlTextWriter でセルの色を設定する方法
私のプログラムは、XmlTextWriter を使用して Excel ファイルを生成します。一部のセル (または行) の色を正確に設定する方法がわかりません。
これが私のコードの一部です:
c# - 読み取った XML ファイルを上書きできないのはなぜですか (すべてのストリームを閉じたと思います)。
質問:
以下のプログラムは、 で指定されたフォルダー内のすべての XML レポート ファイル (*.rdl ファイル) を読み取りstrPat、コードに従ってそれらを変更し、変更された XML ファイルをフォルダー に保存してから、変更された XML ファイルを<User>/Desktop/AutoModifiedReports/filename.rdlのフォルダーにコピーして戻しますstrPat。
私の問題は、CopyBack プロシージャで不正アクセスの例外が発生することです。プログラムは、ターゲットディレクトリにファイルを書き込んで上書きできます。最初に読み取り、変更し、コピーして戻すときに、不正アクセスの例外が発生します。
これは
ストリームを開いたままにしたり、ファイルをロックしたりしている場所が見当たりません。
私が間違っているのは何なのか、どうすれば修正できるのか、誰か教えてもらえますか?