Я создаю приложение C#, которое, вероятно, будет содержать пару файлов ресурсов для хранения строк для использования в переводе языка. Я пытаюсь придумать соглашение об именах для ключей в моих файлах resouce. Кто-нибудь решил это передо мной?Файл ресурса (.resx) Основные соглашения о присвоении имен?
ответ
Просто используйте соглашение об именах Pascal. Не связывайте ключ с модулем или классом. Обобщите его так, чтобы его можно было повторно использовать.
Например: ReadWriteWarningMessage
Точки отделенной условность отлично работает для пунктов меню. Но как насчет строк, которые генерируются динамически или пользовательских сообщений.
Если у вас есть имя пара значений в ресурсах, как
CloseConfirmation - Вы хотите, чтобы закрыть окно без сохранения?
Добавить новый класс, называемый Сообщениями.
public static class Messages
{
public const String CloseConfirmation = "CloseConfirmation";
public static String GetMessage(String messageId)
{
return //your namespace//.Properties.Resources.ResourceManager.GetString(messageId);
}}
и получить к нему доступ с помощью
MessageBox.Show(Messages.GetMessage(Messages.CloseConfirmation));
Надеется, что это поможет.
Вы считаете, что символы подчеркивания, такие как Menu_File_Open или что-то вроде Place_StringDescription? В настоящее время я использую схему, в которой обычные вещи отправляются в Common_, например Common_PressHereTo, и просматривают конкретные данные в соответствующем месте, например MainMenu_FileOpen. В общем, перед подчеркиванием i введите, где появляется Resource, и после подчеркивания - описательный текст.
Я пытаюсь организовать его аналогично пространствам имен, которые я использую для компоновки структуры программы. Поэтому, если у вас есть MyCompany.MyProduct.MyModule, то строки в этом модуле будут MyModule_Blah_Blah. Таким образом, они уникальны в общем продукте.
Речь идет не о присвоении имен ключам, а о стратегиях доступа к сообщениям в файлах ресурсов. – Juri
Спасибо, Prajeesh, я могу получить доступ к ресурсу без проблем. Моя проблема заключается в том, что у меня может быть несколько сотен ключей, и вам нужен простой способ найти их. Я столкнулся с hoerarchical соглашением вроде: Menu.File.Open как пример подписи меню. Мне нравится этот подход, но десятичные знаки не допускаются при использовании сильно типизированных ресурсов (что я и есть). Спасибо хоть... – Dawsy