У меня есть веб-сайт, который выходит на несколько клиентов. Иногда клиент настаивает на незначительных изменениях. По причинам, не зависящим от меня, я должен подчиняться независимо от того, насколько незначительна просьба. Обычно это не проблема, я просто создаю клиентскую версию пользовательского элемента управления или страницы и перезаписываю по умолчанию во время сборки или создаю настройку конфигурации для ее обработки.Изменение места нахождения ресурса во время выполнения?
Теперь, когда я локализую сайт, мне любопытно, как лучше всего внести незначительные изменения в формулировки.
Скажем, у меня есть файл ресурсов Resources.resx
, в котором есть 300 ресурсов. У этого есть ресурс, названный Continue
. Английская ценность - «Продолжить», французское значение - «Продолжение».
Теперь один клиент по какой-либо причине хочет, чтобы он сказал «Далее» и «Апрес», а остальные хотят сохранить его. Каков наилучший способ размещения такого запроса? (Это простой пример).
только два способа я могу думать о том, чтобы
- Создать другой Resources.resx специфичные для клиента, и заменить .dll во время сборки. Поскольку я буду полностью заменять dll, новый файл ресурсов должен содержать все 300 строк. Очевидная проблема заключается в том, что у меня теперь есть 2 файла ресурсов, каждый из которых содержит 300 строк.
- Создайте пользовательский элемент управления/страницу и измените его, чтобы использовать пользовательский файл ресурсов. например SignIn.ascx будет заменен во время сборки, и он потянет свои ресурсы с
ClientName.resx
вместоResources.resx
.
Есть ли какие-нибудь другие вещи, которые я мог бы попробовать? Есть ли способ изменить его, чтобы приложение всегда выглядело в файле ClientResources.resx
для переопределенных значений, прежде чем фактически посмотреть на указанный файл ресурсов?