2012-03-14 24 views
0

的「移動到資源」功能,我在C#中的MessageBox像這樣:我應該如何使用ReSharper的

MessageBox.Show("Message Here", "Title Here", MessageBoxButtons.OK, MessageBoxIcon.Error); 

在我的留言和標題我有ReSharper的選項以Move to Resource並想移動這些值給Resources.resx文件,然後在我的MessageBox中引用它們。

這是矯枉過正,而不是這個功能是真正的還是一個好主意?

感謝

+0

如果你想讓你的應用程序本地化,是的,這是一個好主意 – ionden 2012-03-14 12:48:07

回答

1

我會說這不是矯枉過正。即使你100%確定(你真的可以嗎?),你永遠不需要用不同的語言提供你的應用程序,如果它不被字符串/消息「散佈」,代碼將更加可讀。

就我個人而言,我發現我開始寫更好的(錯誤)消息,一旦我將它們全部移到資源中。在此之前,我努力讓他們在代碼中「看起來不錯」,而不是提供真正有意義的消息。

當然,也有缺點。雖然導航通常不會受到影響(ReSharper的「轉到定義」在字符串資源方面工作良好),但您不會檢查string.Format參數。再次,對我來說,這是值得的代價(可以說更乾淨的代碼和更好的消息)。因人而異。

0

如果只是用一種語言(即英文)現在和將來,你可以忽略ReSharper的國際化功能。但是,如果可能發生支持其他語言的情況,則應將所有字符串(顯示在用戶界面中)移動到資源中。

0

引入了move to resource功能來幫助國際化。當R#檢測到一個可以本地化的字符串時,它會將它移動到一個資源文件中。這樣做的好處是.resx中的字符串可以更改爲不同的語言,而無需重新編譯任何代碼。

請參閱此here上的ReSharper文檔。