我有一個類庫項目中的資源文件。我正在使用這個資源文件來保存用戶可能最終看到的各種消息。如何在使用ResourceManager.GetString()時避免使用魔法字符串?
例如,資源的名稱是「InvalidEmailAddress」,並且en-US資源文件中的值是「無效的電子郵件地址」。
當我調用ResourceManager的GetString的(string)方法我這樣做:
return resourceManager.GetString("InvalidEmailAddress");
然而,這似乎真的對我不好。如果有人更改資源的名稱怎麼辦?現在我的聲明將返回一個空值。
有沒有辦法解決這個問題?
UPDATE:本地化是一個重要的因素。資源管理器用於確保我可以更改文化並獲取適當的字符串值。
可能必須將「自定義工具」屬性更改爲「PublicResXFileCodeGenerator」。 – McGarnagle
這將繞過ResourceManager。本地化仍然有效嗎?例如,如果我將CurrentCulture設置爲「de-GR」,那麼資源管理器就足夠聰明,可以開始拉動德語等價字符串。 –
@SailingJudo,爲什麼?你有沒有選擇生成的代碼? –