我一直在通過我的第一個MVC應用程序,我想本地化它。我知道如何使用App_GlobalResources,但我更願意使用App_LocalResources。App_LocalResources如何與MVC協同工作?
在一個典型的WebForms應用程序中,您將App_LocalResources文件夾放在與ASPX文件相同的目錄中......這與MVC中的相同(IE:我是否將它們放在「views」目錄中的相應子文件夾中) ?
此外,在訪問視圖中的App_GlobalResources時,您可以像<%=Html.Encode(Resources.Index.Title)%>
那樣執行此操作,但是我無法通過App_LocalResources執行此操作。我不希望有讓我<label runat="server"
爲了拿meta:resourcekey
編輯的優勢:
,我發現了一個方法來做到這一點,但我不知道這是最好的方法。這裏的想法
- 你把
App_LocalResources
文件夾的子文件夾中的各個文件夾查看 - 內您創建一個符合您的意見RESX文件... IE:
Index.resx
或About.resx
- 您設定的RESX文件屬性爲「公共」(PublicResXFileCodeGenerator),「嵌入式資源」,「視圖。[視圖名]」命名空間
- 創建一個名爲「標題」的新資源名稱,並將任何你想要的值。
現在,我可以參考使用一些本地資源這樣
<%= MyProj.Views.Home.Index.Title%>
我這個看到的是資源嵌入的事實。唯一的問題,沒有再我不能添加新的語言環境編譯該項目。
Here is my reference on this method.