2010-07-13 76 views
2

你認爲怎麼樣使用公共靜態類的要挺住errorMessages和UI按鈕名稱等字符串?使用類持有與軟件相關的消息

例子:

public static class UiMessages 
    { 
     public const string ConfirmationDialogTitle = "Atenção"; 
     public const string ConfirmationLandOwnerDelete = "Você tem certeza que deseja deletar os proprietários selecionados?"; 
     public const string ConfirmationProfessionalDelete = "Você tem certeza que deseja deletar os profissionais selecionados?"; 
     public const string ConfirmationGnssDevice = "Você tem certeza que deseja deletar os aparelhos selecionados?"; 
    } 

這是一個糟糕的初步實踐?有沒有更好的方法來處理這個問題?

回答

1

這應該是幫助:

http://www.c-sharpcorner.com/uploadfile/ankithakur/globalization_localization_in_dotnet_csharp07032006023510am/globalization_localization_in_dotnet_csharp.aspx

(哎呀,那是ASP.NET)..試試這個:

http://msdn.microsoft.com/en-us/goglobal/bb688096.aspx

這裏有一個很好的例子:

http://msdn.microsoft.com/en-us/library/y99d1cd3(VS.71).aspx

.NET在整個本地化和全球化的支持,適用於只是這種事情。

希望有幫助!

+0

我會查找它。感謝您的支持。 – 2010-07-13 20:37:31

1

它的突出部分定義的全局變量的另一種方式,是一樣好/壞的任何其他全局變量。

難道這些真的需要全局訪問?似乎每個課程只需要一個課程。

我能看到的唯一的進步是你把所有的,如果你想將其轉化成另一種語言一個地方提供的字符串,而是把我們帶進一個完全不同的領域。

+0

是的,這是不錯的想法。但由於它們是常量,我不認爲我會遇到外部應用程序訪問我的課程的問題。就我而言,有一組字符串將針對軟件的每個部分開放 - 所以我可能會爲此做些事情。還有其他意見嗎? – 2010-07-13 20:35:28

2

在這種情況下,我會說是的,這是不好的做法 - 因爲你可能想要internationalization和本地化擴展;你可能能夠更好地利用這些任務的屬性或資源。

但是,我對內部使用類似的類(例如未顯示給用戶)數據(如數據列的名稱)。

+0

我也有一堆數據列。我可能會在資源和常量類之間採用混合方法。 – 2010-07-13 20:41:06

相關問題