2009-05-22 35 views
0

我有一個asp.net應用程序與一些本地資源。這些資源用於aspx和代碼隱藏文件中:asp.net:部署本地資源 - 嵌入可能嗎?

aspx: 
<asp:TextBox ID="TextBox1" runat="server" Text="<%$ Resources:testTag %>" /> 

.vb: 
TextBox1.Text = GetLocalResourceObject("testTag").ToString 

如果我將.resx文件與應用程序一起部署,則沒有問題。

但是,如果我將resx文件上的構建操作更改爲「嵌入式資源」,則資源不可用,即使它們位於構建的DLL中。

是否可以在DLL中部署資源,或者我堅持管理在服務器上部署resx文件的&?

+0

你有沒有解決過這個問題?我目前正在嘗試編寫自己的ResourceProviderFactory來支持相同的場景,但是我還沒有成功 - http://stackoverflow.com/questions/10533721/asp-net-how-to-get-assembly-from- virtual-path-in-custom-iresourceprovider-impl – Buthrakaur 2012-05-11 07:06:55

回答

0

是的,這是可能的。

結賬this codeproject示例。這有點舊,但仍然有效。

另一個來自微軟的例子是here

UPDATE

說實話,我還沒有這麼遠用我們自己的本地化,但(我們仍然使用通常嵌入資源文件);然而,here is a link是關於如何從你的aspx頁面獲取資源管理器的例子。這是該主題中的最後一篇文章。

GeorgeZ指出要在page_init方法中加載資源管理器。我相信你可以把它放到你的所有頁面繼承的某種類型的BasePage中,以避免它直接在所有的代碼後面。

+0

似乎沒有辦法使用這種機制來處理aspx頁面中的本地化字符串。我們有很多標籤在代碼隱藏中從未被觸及,但仍需要顯示本地化的值。 – chris 2009-05-22 16:09:04