Переопределить нейтральный язык определенного файла ресурсов в сборке - PullRequest
3 голосов
/ 20 февраля 2010

У меня есть сборка, которая содержит несколько файлов ресурсов. У большинства из них есть нейтральный язык 'nl' (нидерландский язык, указанный на сборке как нейтральный язык), поэтому я не указываю 'nl' в их именах файлов.

Однако я помещаю строки на английском языке в некоторые другие файлы ресурсов (они являются внутренними сообщениями об ошибках), и я никогда не буду предоставлять их перевод на голландский язык.

Если я назову эти файлы ресурсов чем-то вроде «Errors.en.resx», класс конструктора не будет сгенерирован (нарушает сборку), потому что «Errors.resx» не существует. Это раздражает, потому что теперь мне нужно поместить строки 'en' в файл ресурсов, подразумеваемый 'nl', и я действительно не хочу переводить эти строки в 'nl' или предоставлять пустые строки только для удовлетворения компилятора.

Есть ли способ переопределить нейтральный язык в конкретном файле ресурсов или, возможно, каким-то образом 'Errors.en.resx' создает класс конструктора?

1 Ответ

3 голосов
/ 09 июля 2010

Если строки не нужно переводить, рассмотрите возможность использования констант в статическом классе, если на них не ссылаются другие сборки.

Если строки повторно используются в нескольких сборках, рассмотрите возможность их указания как static readonly, поскольку это позволит другим сборкам загружать новую версию строк без необходимости их перестройки. Для этого сценария вы можете даже пойти еще дальше и указать открытое статическое свойство только с аксессором get, который в свою очередь использует поле private static readonly.

...