0

ASP.netWebアプリケーションを作成しました。「ThePragmaticProgrammer」のアドバイスに従ってアプリケーションロジックを構成するために、さまざまなビジネスルールを記述した大きなXMLファイルを作成しました。

ローカル開発ワークステーションでアプリケーションをテストするときは、ファイルをにコピーしてc:\xxxxx\myfile.xmlから、この場所からファイルを読み取るためのコードを記述します。

このxmlファイルをWebアプリケーションの一部として展開して、Webアプリケーションが展開されているディレクトリから読み取られるようにする正しい方法は何ですか?

更新:問題のXMLファイルはサーバー側の構成用であり、エンドユーザーがダウンロードできるようにすることはできません。

4

4 に答える 4

4

これをリソースとして埋め込まない場合は、次のことを行う必要があります。

  1. このファイルが存在するディレクトリを作成します。
  2. ファイルを作成し、そのビルドアクションをコンテンツに設定します。
  3. そのディレクトリにweb.configファイルを作成して、ディレクトリへのアクセスを禁止し、ビジネスルールをインターネットに公開しないようにします。
  4. アプリケーションのメインweb.configに、アプリケーションのルートを基準にしたこのファイルへのパスを指定する設定、つまり「〜/ MySecureFolder/MyBusinessRules.Xml」を追加します。
  5. HttpServerUtility.MapPathメソッドを呼び出して、値をweb.configの設定から仮想パスに変換するコードをいくつか用意します。
于 2012-06-08T16:24:58.493 に答える
0

これが必要かどうかわかりません-XMLファイルをクリックし、プロパティウィンドウを開いて、[ビルドアクション]プロパティを見つけます。値を「埋め込みリソース」に設定します

于 2012-06-08T16:16:32.443 に答える
0

私はあなたがする必要があることは次のとおりだと思います:

  1. VisualStudioのWebアプリケーションプロジェクトにXMLファイルを追加します
  2. ファイルを右クリックして、[プロパティ...]を選択します。
  3. ビルドアクションを「コンテンツ」に設定し、出力ディレクトリにコピーを「コピーしない」に設定します

これにより、XMLファイルが残りのWebアプリと一緒にデプロイされるようになります。

于 2012-06-08T16:19:40.700 に答える
-1

httpリクエストからサーバーへのXMLファイルを利用できるようにする場合は、それをWebパブリケーションフォルダーに配置する必要があります。

このASP命令は、パブリケーションパスを見つけるのに役立ちます。Request.ServerVariables( "APPL_PHYSICAL_PATH")

于 2012-06-08T16:17:56.170 に答える