Мне нужно хранить продукты для решения электронной коммерции в базе данных. Каждый продукт должен иметь описательную информацию, такую как имя, описание и т. Д.Архитектура глобализации
Мне нужен какой-либо продукт, который будет локализован на x количество языков.
Что я сделал до сих пор, чтобы сделать какой-либо столбец, который должен быть локализован и nvarchar(MAX)
, а затем я хранить XML-строку, как это:
<cultures>
<culture code="en-us">Super fast laptop</culture>
<culture code="da-dk">Super hurtig bærbar</culture>
</cultures>
И когда я загрузить его из базы данных, в мои объекты бизнес-логики, я разбираю XML-строку до Dictionary<string, string>
, где ключ является кодом культуры/языка.
Так что, когда я хочу, чтобы отобразить название продукта, я делаю это:
lblName.Text = product.Name["en-us"];
Кто-нибудь есть лучшее решение?
Хорошая идея оставить «Культуру» в названии таблицы, чтобы отличить содержимое таблицы от локализованных данных, а не от чего-то другого. – y0mbo 2009-05-21 16:21:17