2012-01-09 9 views
0

Q:私は私は私の解決策にアイコンを追加する.soその後、私のWebアプリケーションにfavicon.icoを追加したいControlsコレクションを変更することはできませんコードブロック(すなわち<% … %>)

、私は、次の書き込み:

ログインページ:

<link rel="shortcut icon" href="<%=ResolveUrl("~/favicon.ico")%>"/> 

すべてのものは大丈夫です。他のページの

マスターページ:

<link rel="shortcut icon" href="<%=ResolveUrl("~/favicon.ico")%>"/> 

は、次のエラーが表示されます。

制御 は、コードブロック(すなわち<% ...%>)が含まれているため、Controlsコレクションを変更することはできません。

私が代わりに<%#を使用している場合:?

protected override void OnLoad (EventArgs e) 
{ 
    base.OnLoad (e); 
    Page.Header.DataBind(); 
} 

は、このあまりパフォーマンスとどのようにこの問題を解決することですか?

答えて

2

データバインディングの形式を使用する必要はありません。単純にrunat = "server"を指定すると、ランタイムはGenericHtmlControlとしてタグを処理し、Url属性は通常のASP.Net ServerControlと同じ方法で解決されます。

<link rel="shortcut icon" runat="server" href="~/favicon.ico" /> 

// will render as 
<link rel="shortcut icon" href="favicon.ico" /> 
関連する問題