所以我試圖在一個簡單的網絡3.5/Mvc2網站使用本地和全球資源。Asp.Net資源混淆
首先,我嘗試在全局資源中設置我的驗證消息,但隨後出現了第一個問題:在DataAnnotations屬性上設置全局資源時沒有提供任何錯誤,但是在運行時它不會從中恢復字符串運行時錯誤)。示例代碼:
[Required(
ErrorMessageResourceType = typeof(Resources.Global),
ErrorMessageResourceName = "LastNameRequired")]
public string LastName { get; set; }
全球資源不能被設置爲公共的(我認爲這就是問題所在),所以我覺得移動在當地資源DataAnnotations被使用的消息:
[Required(
ErrorMessageResourceType = typeof(Views.MyApp.App_LocalResources.Apply_aspx),
ErrorMessageResourceName = "LastNameRequired")]
public string LastName { get; set; }
這給我帶來了2點備用的問題:如果我設置了本地資源建立行動=內容資源被正確使用的方法GetLocalResourceObject
的觀點看,但我得到試圖從DataAnnotations閱讀它們時,以下幾點:
找不到適合特定文化或中性文化的資源。確保「MyNamespace.Website.Mvc.Views.MyApp.App_LocalResources.Apply.aspx.resources」在編譯時正確嵌入或鏈接到程序集「MyNamespace.Website.Mvc」中,或者確保所有需要的附屬程序集均可加載並完全籤。
然後我試着設置build action = embedded資源。這樣App_LocalResources文件夾沒有得到出版,我在嘗試讀取視圖本地資源與GetLocalResouceObject
如果出現以下錯誤:
此頁的資源類沒有被發現。請檢查資源文件是否存在,然後重試。
我明顯嘗試谷歌周圍的解決方案,但我找不到任何類似於我的方案,所以我在這裏問。
我必須做些什麼才能使順暢?
謝謝。
這並沒有告訴我任何新東西,但我自己找到了解決方案。也許不是最好的,但它的工作原理。現在發佈。 –