2010-04-22 3 views
11

Возможно, тривиальный вопрос, но меня интересуют ответы. В настоящее время я реорганизую несколько очень больших монолитных файлов строк (один файл ресурсов для каждого проекта, около 30 проектов). Я раскалываю их так, что мы следим за конвенцией для наших файлов и упрощаем поиск и управление строк при кодировании.Схемы именования файлов ресурсов строк.

Вообще я разделения файлов в эту схему:

  • ErrorMessages.resx
  • LogMessages.resx
  • ViewResources.resx
  • AppResources.resx

Я m не ужасно взволнован именованием, и мне просто интересно, что другие люди используют. Например, вместо AppResources (строк для внутреннего использования приложением), я видел много демонстрационных проектов используют StringResources, Internal (ужас!) И т.д.

Идеи/анекдоты/предложения на управление ресурсами или стандарт оцениваются схемы именования.

ответ

14

Я вообще структурировать свои ресурсы, как это:

Первый файл ресурсов используется для всего приложения (например, Project.Core) и не включает в себя все виды широко используемых общих строк. Я на самом деле нет никакой разницы между ошибками/исключениями и регистрации:

  • CommonResources.resx
    модификатора доступа: Public
    • Error_Context
      например Error_ArgumentCannotBeNull
    • Warn_Context
      e.g. Warn_ApplicationSettingNotFoundUseDefault
    • Info_Context
      e.g. Info_UpdateAvailable
    • Validation_Context
      e.g. Validation_EmailNotValid

Второй файл ресурсов используется слой представления и содержит все виды строк пользовательского интерфейса. Именование может варьироваться от проекта к проекту, но в целом это выглядит следующей схеме:

  • PresentationResources.resx
    модификатора доступа: Внутренний
    • Common_Context
      например Common_Yes
    • Section/Controller_Window/View_Context
      например.Help_FAQ_HeadlineHowToUseResources или Help_FAQ_TextHowToUseResources

Наконец, каждый проект/сборка имеет также внутренний файл ресурсов для ошибки/Предупреждать/Инфо/Validation ресурсы, которые слишком специфичны, чтобы идти в файле CommonResources.resx. Я должен признать, что я в основном назвать этот файл ресурса InternalResources.cs;)

  • InternalResources.resx
    модификатор доступа: Внутренняя
    • Classname_Error_Context
      например BCrypt_Error_InvalidSaltRevision
    • Classname_Warn_Context
    • Classname_Info_Context
    • Classname_Validation_Context
Смежные вопросы