3

ASP.NETのExpressionBuilder構文を使用して、AppSettingから静的コンテンツのドメインを動的に取得したいと思います。

次の構文を使用していますが、機能しません。

<img src="<%$Appsettings:STATIC_CONTENT_DOMAIN %>/img/logo.jpg" alt="logo" width="176" height="159" />

参考までに、必要なHTML出力は次のとおりです。

<img src="http://static.myserver.com/img/logo.jpg" alt="logo" width="176" height="159" />

ASPXページはCompilationMode="never"である必要があるため、<%=%>構文を使用できないことに注意してください。(ExpressionBuilder構文を使用している理由は、コンパイルされていないページで機能するためです)

これをどのように行うことができるかについてのアイデアはありますか?

4

3 に答える 3

5

このアプローチは私にとってはうまくいきました(あまり読みにくいです:)...

<img src="<asp:Literal runat='server' Text='<%$Appsettings:STATIC_CONTENT_DOMAIN%>'/>/img/logo.jpg" />
于 2010-01-29T02:09:31.367 に答える
2

カスタム式ビルダーの作成を検討することをお勧めします。作成するのはそれほど難しくありません。ここにいくつかのチュートリアルがあります:

次のような独自の式構文を使用できます。

<%$ MyCdnUrl: Static, '/img/logo.jpg' %>

次に、「:」の後のすべてを解析し、必要なURLを作成します。

式ビルダーは「プロパティ値」として使用する必要があると思います。そのため、式ビルダーを単独で完全に使用することはできません。<img runat="server">それでも、または<asp:Image>コントロールまたは<img>その<asp:Literal>内部にあるのようなものを使用する必要があります。

于 2010-01-29T02:17:53.543 に答える
0

次のようなサーバー側のasp.netコントロールを使用する必要があると思います。

<asp:Image ID="MyImage" runat="server" ImageUrl="<%$Appsettings:STATIC_CONTENT_DOMAIN %>" />

ステートメントを、次のような静的な情報と組み合わせることができるかどうかはわかりません。

<asp:Image ID="MyImage" runat="server" ImageUrl="<%$Appsettings:STATIC_CONTENT_DOMAIN %>/img/logo.jpg" />

それは不可能だと思いますが、一見の価値があると思います。試してみてください...

于 2010-01-27T19:04:35.743 に答える