Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
У кого есть какие-то предложения, пожалуйста поделитесь ... Задача: база данных - MS SQL, трех-звенка, тонкий клиент. Подходы: 1) Создать в базу данных таблицу, где колонки - это языки, а первая колонка - язык по умолчанию (индексированная). Выбрать для себя язык для написания любых текстов в программе (язык по умолчанию) и помещять этот текст в функцию, которая по индексу будет находить соответствующую запись, а по глобальной переменной будет выбирать соответствующую колонку. Если фунция не найдет запись, то она создаст в таблице новую запись с соответствующим текстом. Если запись не переведена, то выдается значение языка по умолчанию Преимущества: 1) все тексты находятся в одном месте; 2) не надо думать о поддержке многоязычности; 3) перевод - достаточно легкая вещь. Недостатки: 1) частое дергание базы данных (практически по любому поводу). 2) Взять подход локализации в VB.NET. Правда, я его недостаточно изучил, так что ничего не могу сказать. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 13:45 |
|
||
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
Вопрос: предполагается перевод самого клиента(локализация) или же перевод именно данных которыми оиперирует клиент? Если сам клиент то я делаю обычно по первому из предложенных вариантов только все варианты - ресурсом самого клиента(Resource file), т.е. то же самое но не в базе. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 22:11 |
|
||
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
я именно так делал, названия столбцов были 1033, 1049, 1036, 3082, 1031. Весьма удобно. Плюс - суррогатный ключ у них общий. Хотя и выглядит кривовато, но за основу был взят именно этот вариант. Готов обсудить плюсы и минусы, ибо это не последняя моя потребность в такой архитектуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 23:22 |
|
||
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
Спасибо, Я вчера не дождался, домой ушел ... Насчет ресурсного файла - можно по-подробнее? Дело в том что в VB.NET Я начинающий ... А как насчет скорости - ведь в среднем проекте порядка 10 000 разных текстов (сообщений, меню, отчетных текстов и.т.д.)? Какова скорость по базе данных и по ресурсному файлу? Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2004, 11:06 |
|
||
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
Правый жмяк на проэкте Add>New Item>Assembly Resource File. Там ничего сложного нет. Я подобной тесникой с шестой студии пользуюсь. очень эффективно, учитывая что там все ресурсе вообще в экзешник зашивались. Здесь будет отдельная сборка. Скорось не замерял, но в любом случае быстрее чем из базы. Да и действительно, дергать ее по каждому клику мышью - не есть гут. Подробнее почитай F1 - Assembly Resource file template. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2004, 21:24 |
|
||
|
Как правильно реализовать многоязычность в приложении?
|
|||
|---|---|---|---|
|
#18+
да-да, я забыл сказать, конечно, Magnus прав такая структура нужна только там, где база необходима. Мне собственно это было нужно для каталога, там больше 500 директорий и каждая на 5 языках, синхронные абсолютно, для интерфейса вообще, в т.ч. для страниц - конечно же ресурсы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2004, 22:45 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32498121&tid=1439239]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 369ms |

| 0 / 0 |
