2009-03-26 23 views
2

レポートパラメータ(日付範囲、フィルタなど)を指定しているときに出力オプション(HTMLまたはPDF)を選択できるようにするというレポートがあります。ASP.NETファイルシステムにPDFを書き込む

私はそれが常にHTMLを行い、彼らはそれをしたい場合は、ユーザーがPDFをつかむことができるようにレンダリングされたHTMLページ上のリンクを置くようにレポートを変更したいです。

私のサイトがPDFをファイルシステムに書き込むためのIIS6/IIS7の設定、ユーザ権限などを変更するにはどうすればよいですか?任意のC#のコードをいただければ幸いです。

ランダムなファイル名でPDFを作成し、古いPDFをクリーンアップするプロセスを追加することで、ディスクスペースの問題は発生しません。これは軽く使われているWebアプリケーションなので、古いPDFファイルがたくさんあることに心配していません。

答えて

4

、アプリケーションプールに移動し、あなたのウェブサイトは下で実行されるアプリケーションプールのプロパティを取得(あなたがわからない場合、それは、Webサイトのプロパティ]ダイアログボックス> [ホームディレクトリ]タブにあります)。 [ID]タブに移動し、アプリケーションプールが実行されているユーザーアカウントを確認します。

は、その後、あなたが右クリックし、PDFへの書き込み、アプリケーションプールのためにリストされているアカウントのプロパティ]> [セキュリティ]> [追加し、追加し、「書き込み」に行きたいターゲットフォルダに移動します。

+1

+1より詳細がわかりますが、web.configにというエントリがある場合、またはIISが認証を行っている場合は、それが優先されます。 – Moose

0

あなたがする必要があることは、Webサイトが実行されているユーザーID(またはサイトがそのように実行されている場合はログインしているユーザー)が、PDFを作成するディレクトリへの書き込み権限を持っていることですIIS 6マネージャで。

0

あなたのファイルを書き込もうとしたときに、あなたのファイルのパーミッションが正しく設定されていることを確認できるように、.NETでSystem.Security.Permissions名前空間を見て、FileIOPermissionクラスを取る必要があります。

私はそれを必要と同じように使用します(ユーザーにバックアップする前にPDFファイルをサーバーに書き込む)。

1

nはIIS 6マネージャー、アプリケーションプールに移動し、あなたのウェブサイトは下で実行されるアプリケーションプールのプロパティを取得(あなたがわからない場合、それは、Webサイトのプロパティ]ダイアログボックス> [ホームディレクトリ]タブにあります)。 [ID]タブに移動し、アプリケーションプールが実行されているユーザーアカウントを確認します。

は、その後、あなたが右クリックし、PDFへの書き込み、アプリケーションプールのためにリストされているアカウントのプロパティ]> [セキュリティ]> [追加し、追加し、「書き込み」に行きたいターゲットフォルダに移動します。