powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Разработка web приложения с мультиязычным интерфейсом
6 сообщений из 6, страница 1 из 1
Разработка web приложения с мультиязычным интерфейсом
    #39461078
Testor1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!


Пожалуйста посоветуйте хороший ресурс описывающий разработку приложений с поддержкой мультиязычного интерфейса на asp.net core 1.1. Также интересует структура справочников содержащие значения на нескольких языках. Какие поля для этих таблиц нужно создавать для мультиязычности ?
...
Рейтинг: 0 / 0
Разработка web приложения с мультиязычным интерфейсом
    #39461167
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Testor1,

Спектр решений для разных случаев весьма широк. Что конкретно должно быть мультиязычным, а что нет? Только данные? Только интерфейс? Интерфейс и данные? Взаимозаменяемые ли на 100% строки? Или от случая к случаю? В общем, нет универсального решения, которое можно посоветовать. Дайте больше информации.
...
Рейтинг: 0 / 0
Разработка web приложения с мультиязычным интерфейсом
    #39461814
Testor1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttTestor1,

Спектр решений для разных случаев весьма широк. Что конкретно должно быть мультиязычным, а что нет? Только данные? Только интерфейс? Интерфейс и данные? Взаимозаменяемые ли на 100% строки? Или от случая к случаю? В общем, нет универсального решения, которое можно посоветовать. Дайте больше информации.

Простая задача. Нужно к примеру сделать eshop на двух языках. Интерфейс, продукция и адреса должны быть на двух языках - русском и английском.

Интересует именно Best Practice. Как лучше и почему. Где лучше хранить мультиязычное меню ? В локальных ресурсах или в базе данных ? Какова структура справочных таблиц хранящие мультиязчные данные?
На сколько правильная и структура для поддержки мультиязычности на примере таблицы City

table City
Код: sql
1.
2.
3.
4.
id int identity (1,1),
name nvarchar(50),
collationUI nvarchar(10),
parent_id int 
...
Рейтинг: 0 / 0
Разработка web приложения с мультиязычным интерфейсом
    #39461832
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Testor1,

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

Код: sql
1.
2.
3.
4.
5.
id int identity (1,1),
name_ru nvarchar(50),
name_en nvarchar(50),
collationUI nvarchar(10),
parent_id int 



В чём простота такого решения?

Данные лежат рядом

Смена локали означает всего лишь смену суффикса (_ru, _en) при выборке данных

В схеме сразу видно что локализовано, а что нет

Какие это накладывает ограничения?


Довольно проблематично добавить ещё один язык, надо везде добавить по полю и учесть смену суффикса

Вся локализация выполняется 1 к 1, что обычно далеко от реалий, обычно перевод отстаёт от оригинала, это придётся как-то решать в логике, кроме того контент для разных языков может различаться существенно даже по структуре

Надо думать что делать, если данных для определённой локали нет, брать ли её из другой локали или подставлять какое-то значение по умолчанию

Работа с локализацией будет размазана по всей схеме данных

Строковые ресурсы это не единственное, что завязано на локали, и решать таким образом эту проблему сложнее

К вопросам «на сколько правильная» ответа дать нельзя. На 10 задач может быть 10 разных непохожих решений, которые все правильные.

Вообще, если интересно, можешь посмотреть устройство мультиязычного интернет-магазина nopCommerce:

https://github.com/nopSolutions/nopCommerce

Вот документация по мультиязычности:

http://docs.nopcommerce.com/display/en/Languages

Можешь скачать, установить и посмотреть как работает. Там есть локализация и в ресурсах и в базе данных. Посмотреть исходники и узнать как это устроено. Это конечно не означает единственно верного решения. Но оно рабочее и достаточно эффективное.
...
Рейтинг: 0 / 0
Разработка web приложения с мультиязычным интерфейсом
    #39462343
Testor1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttTestor1,

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

Код: sql
1.
2.
3.
4.
5.
id int identity (1,1),
name_ru nvarchar(50),
name_en nvarchar(50),
collationUI nvarchar(10),
parent_id int 



В чём простота такого решения?

Данные лежат рядом

Смена локали означает всего лишь смену суффикса (_ru, _en) при выборке данных

В схеме сразу видно что локализовано, а что нет

Какие это накладывает ограничения?


Довольно проблематично добавить ещё один язык, надо везде добавить по полю и учесть смену суффикса

Вся локализация выполняется 1 к 1, что обычно далеко от реалий, обычно перевод отстаёт от оригинала, это придётся как-то решать в логике, кроме того контент для разных языков может различаться существенно даже по структуре

Надо думать что делать, если данных для определённой локали нет, брать ли её из другой локали или подставлять какое-то значение по умолчанию

Работа с локализацией будет размазана по всей схеме данных

Строковые ресурсы это не единственное, что завязано на локали, и решать таким образом эту проблему сложнее

К вопросам «на сколько правильная» ответа дать нельзя. На 10 задач может быть 10 разных непохожих решений, которые все правильные.

Вообще, если интересно, можешь посмотреть устройство мультиязычного интернет-магазина nopCommerce:

https://github.com/nopSolutions/nopCommerce

Вот документация по мультиязычности:

http://docs.nopcommerce.com/display/en/Languages

Можешь скачать, установить и посмотреть как работает. Там есть локализация и в ресурсах и в базе данных. Посмотреть исходники и узнать как это устроено. Это конечно не означает единственно верного решения. Но оно рабочее и достаточно эффективное.


Спасибо!
В таблице опечатался cultureUI, а не collationUI.

P.S.
Языков будет несколько Пока для себя склоняюсь к мысли, что основное меню будут делать на основании локальных ресурсов, а все справочники на уровне базы данных по примеру таблиц, что я привел. Документацию также просмотрю.
...
Рейтинг: 0 / 0
Разработка web приложения с мультиязычным интерфейсом
    #39462495
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
локализация на уровне бд удобнее тем что не надо пересобирать в отличие от ресурсов, грузи языки сколько хочешь.

п.с. ну стырь класс у нопа к себе по работе с локализацией и все.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Разработка web приложения с мультиязычным интерфейсом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]