Я разработал портал крупного бизнеса. Я просто понял, что мне нужен мой веб-сайт на другом языке. Я исследовал решения, доступные как
Есть ли любые другие доступные опции.
Я думал о решении как, когда страница создается на стороне сервера затем, я мог перевести его прежде, чем передать обратно клиенту. Есть ли какой-либо способ, которым я могу сделать это? (для перевода всего включая данные, добавленные от баз данных или через код. И не производя дизайн.)
Если вам действительно нужно перевести приложение, это потребует много тяжелой и утомительной работы. Не существует волшебной пули.
Первое, что вам нужно сделать, это преобразовать обычный текст в разметке в asp: Localize controls. Используя элемент управления «Локализация», вы можете оставить существующие теги
на месте и просто заменить текст внутри них. На самом деле нет никакого способа обойти это. Поиск и замена Visual Studio поддерживает сопоставление регулярных выражений, которое может вам в этом помочь, или вы можете использовать Resharper (см. Ниже).
Первый подход - загрузить приложение для покупок с открытым исходным кодом nopCommerce и посмотреть, как они справятся со своей локализацией. Они хранят свои строки в базе данных и имеют пользовательский интерфейс для редактирования языков. Подобный подход может подойти вам.
В качестве альтернативы, если вы хотите использовать файлы ресурсов, есть два инструмента, которые я бы рекомендовал использовать в дополнение к Visual Studio: Resharper 5 ( Экранная демонстрация функций локализации ) и Редактор ресурсов Zeta .Вот шаги, которые я бы предпринял, чтобы выполнить это, используя этот метод:
Я использовал этот подход на сайте, переведенном на 8 языков (и увеличивающемся) с десятками страниц (и увеличивающимся). Однако этот сайт не редактируется пользователем; страницы полностью контролируются программистами.
Я бы предпочел путь к файлу ресурсов варианту перевода, потому что значение слов на языке может быть очень контекстным, и даже одна ошибка может подорвать доверие к вашему сайту.
Как вы предлагаете, Visual Studio может генерировать ключи файлов метаресурсов для большинства элементов управления, содержащих текст, но может оставить вам делать все остальное вручную, но я не вижу более простого и надежного решения.
Я не думаю, что локализацию легко автоматизировать, поскольку текст, хранящийся в базе данных, часто приводит к изменениям схемы, чтобы разрешить использование нескольких языков, а веб-HTML часто требует реструктуризации, чтобы иметь дело с усеченными или обернутыми ярлыками и кнопками. текст, потому что, например, вы перевели на немецкий язык или что-то в этом роде.
Другие соображения: Настройки культуры - финансовые разделители, форматы даты. Справа налево - некоторые языки, такие как арабский, пишутся справа налево, что означает, что страницы требуют переосмысления в отношении управления позиционированием, например изображений и т. Д.
Удачи, что бы вы ни выбрали.
Думаю, вам стоит попробовать Google Translate.
http://translate.google.com/translate_tools
Очень просто и очень-очень эффективно.
HTH
Я сделал это сложным способом:
Это не очень красиво, но это работает.
Конечно, будет больше работы по созданию файлов ресурсов для каждого языка, но я бы выбрал этот вариант, поскольку он дает вам возможность быть более точными. Если вы сделаете это таким образом, вы можете получить перевод текста вручную кем-то, кто говорит на этом языке (есть много компаний, которые предлагают такого рода услуги).
Системы автоматического перевода часто хороши для того, чтобы дать общее представление о том, что означает что-то на другом языке, но я бы никогда не использовал их, пытаясь изобразить профессиональный образ, так как часто то, что они выводят, просто не имеет смысла. Ничто не кричит "непрофессионально!" как текст, который просто не имеет смысла, потому что он был переведен автоматически.
большой случай переключения? используйте словарь/хэш-таблицу (отдельный экземпляр для каждого языка), это намного, намного эффективнее и быстрее.