0

私は web.config キーを持っています:

<add key="IMGSRC" value="http://localhost" />

aspx ページに連結された画像のパスと共に、このキーの値を使用したいと考えています。「../ImagesFolder」と言うだけでルート フォルダーにアクセスできることは承知していますが、セキュリティ上の理由から、私の Web サイトでは親パスが無効になっています。だから今、私はそれを回避する必要があります。

このようなものが必要です(インターネットを調べた後に試したことがいくつかありますが、うまくいきませんでした.):

1) <img id="Img19" runat="server" alt="Admin" src='<%#ConfigurationSettings.AppSettings["IMGSCR"] %>' />

2) <img id="Img19" runat="server" alt="Admin" src='<%#ConfigurationSettings.AppSettings["IMGSCR"] + "/ImagesFolder/img.jpeg" %> ' />

3) <img id="Img19" runat="server" alt="Admin" src="<%#ConfigurationSettings.AppSettings["IMGSCR"] %> " + "/ImagesFolder/img.jpeg" />

また、私はこれを試しました: Path = System.Configuration.ConfigurationManager.AppSettings["RootforIMG"].ToString();で変数Pathを宣言しました。Page_Load

そして、aspxページでasを使ってみまし <img id="Img19" runat="server" alt="Admin" src="<%=Path %> " + "/ImagesFolder/img.jpeg" />たが、これもダメです。

4

3 に答える 3

0

以下のようなものを試してみることはできますか?

<img id="Img19" runat="server" alt="Admin" src='<%= GetImageSource()%>' />

コードビハインドで

public string GetImageSource()
{
 return ConfigurationManager.AppSettings["IMGSCR"] + "/ImagesFolder/img.jpeg";
}
于 2012-09-12T13:25:28.883 に答える
0

属性を持つコントロールのrunat="server"場合、Web サイトのルートからの相対パスをマップするための特別なコードは必要ありません。

<img id="Img19" runat="server" alt="Admin" src"~/ImagesFolder/img.jpeg" />

パスは、Web サイトのルート フォルダーに~/ImagesFolder/img.jpeg置き換えて解決されます。~

パスを解決するために何らかのロジックが必要な場合 (たとえば、関数を呼び出す必要がある場合)、これを使用できます。

<img src'<%= ResolveImageName() %>' />

URL は適切にエンコードする必要があることを忘れないでください。

于 2012-09-12T14:08:16.223 に答える
0

画像の相対パスは機能するはずです:

相対パスは、ページの場所ごとに指定できます。つまり、「../IMages/img.jpg」または「images/img.jpg」です。

これを試して :

<img id="Img19" runat="server" alt="Admin" src='ImagesFolder/img.jpeg' />
于 2012-09-12T13:55:43.020 に答える