2010-08-22 2 views
0

Я разрабатываю веб-приложение юникода (на иврите). и мой маршрут выглядит следующим образом:. «SomeUnicodeHebrewWord/{CategoryId}/{CategoryName}/{Page}asp.net mvc и unicode маршруты и ссылки

Когда я использую ActionLink SomeUnicodeHebrewWord и CategoryName (также на иврите) становятся HTML кодируются как я могу избежать этого ? не могу я ссылки, созданные с го древнееврейских персонажей? это важно с точки зрения SEO.

Спасибо!

ответ

0

избежать HTMLEncoding и URIEncoding не важно по причинам, SEO. может быть, есть поисковые системы там которые не понимают эти кодировки, но такие наполовину похожие поисковые системы не будут влиять на ваш рынок успех. Просто волнуйтесь о профессиональных поисковых системах; все профессиональные поисковые системы (и я не просто говорю о больших, все из них) понимают, как работают веб-страницы.

Кроме того, я бы удостоверился, что каждый объект, которому соответствует строка, понимает соответствующие кодировки (UTF-16 в терминах первого уровня обработки .NET, UTF-8 с точки зрения ввода и вывода в и из паутина). Тем не менее, может быть хорошей идеей иметь ссылки на основе кодированного вывода строки URI (кодировка типа% xx, а не кодировка #xXXX), поскольку некоторые пользовательские агенты имеют меньше проблем с такими URI, чем с IURI (они оба прекрасно понимаются и как эквивалент современных поисковых систем), в то время как более современные пользовательские агенты будут скрывать кодировку от пользователей, поэтому вы получаете обратную совместимость, не нанося вреда пользователям современных браузеров или поисковым системам.

+0

Hi, Возможно, это не важно, но оно выглядит лучше как URL. Дело в том, что проблема - это ивритское слово в маршруте, а не в параметре строки запроса, похоже, что движок делает html-кодирование на чем-нибудь, что отображается – TomerMiz

+0

Что именно вы видите. HTML-кодировка не изменяет иврит (поместите <% = Server.HtmlEncode («שָׁלוֹם»)%> на страницу, и вы получите выход שָׁלוֹם в исходный код), если это необходимо, потому что вы используете кодировку символов, в которой буквы на иврите невозможны (это плохая идея). Между тем, однако, еврейские буквы не допускаются в URI только в IURI (интернационализированные URI). Есть еще некоторые браузеры, которые не могут идти в IURI -> URI, поэтому помещаем URI в исходный код и позволяем браузеру -> IURI, если достаточно сложная идея - неплохая идея. –