13

こんにちは、ASP.net Web アプリケーションを開発しています。Web サイト (またはアセンブリを含む bin ディレクトリ) の現在の場所 (物理的) を見つける必要があります。

Directory.GetCurrentDirectory() を使用してみましたが、ASP .net 一時ディレクトリが返されます。

構成ファイルに絶対パスのアプリケーション設定を含めるという考えは本当に好きではありません (えーと!)

どんな助けでも大歓迎です!:)

結論:

物理ファイルパスが必要な理由について、いくつかのコンテキストを提供する必要がありました。質問への迅速な回答に感謝します:)

XSL-FO for .net ( FO.netライブラリ) を使用して PDF を生成しています。FO に画像を埋め込むには、絶対パスを指定する必要があります。

<fo:external-graphic src="C:\MyWebsite\images\image1.jpg" />

私がしなければならなかったことは、現在のディレクトリを Web サイト (または bin ディレクトリ) に設定することでした。これにより、XSL FO レンダラーが画像の場所を認識できるようになります。

4

2 に答える 2

33

( binフォルダーSystem.Web.HttpRuntime.BinDirectoryへの物理パス) と (最上位の ASP.NET アプリケーション フォルダーへの物理パス)が必要です。System.Web.HttpRuntime.AppDomainAppPath

于 2009-11-16T06:32:18.813 に答える
5

パスで何をしたいかによって異なりますが、通常のアプローチはServer.MapPath()です。例えば:

YourControl.src = Server.MapPath("~/images/image1.jpg");

これにより、指定したファイルの物理パスが返されます。

于 2009-11-16T09:42:17.137 に答える