2010-08-22 7 views
0

Je développe une application web Unicode (en hébreu). et mon itinéraire ressemble à:. « SomeUnicodeHebrewWord/{CategoryId}/{CategoryName}/{page}asp.net routes mvc et unicode et liens

Quand j'utilise le ActionLink le SomeUnicodeHebrewWord et CategoryName (également en hébreu) ​​sont de codage html Comment éviter que ? ne peux pas avoir les liens créés avec e caractères hébraïques? il est important pour des raisons de SEO.

Merci!

Répondre

0

Éviter HTMLEncoding et URIEncoding est pas important pour des raisons de SEO. peut-être il y a des moteurs de recherche là-bas cela ne comprend pas ces encodages, mais de tels moteurs de recherche à moitié ne vont pas avoir d'impact sur votre marché Succès. Juste vous soucier des moteurs de recherche professionnels; tous les moteurs de recherche professionnels (et je ne parle pas seulement des grands, tous les) comprennent comment fonctionnent les pages web. Au-delà, je m'assurerais que chaque objet que la chaîne est rempli comprend les encodages appropriés (UTF-16 en termes de premier niveau de traitement .NET, UTF-8 en termes d'entrée et de sortie vers et depuis la toile). Cependant, il peut être judicieux d'avoir des liens basés sur l'URI de sortie de chaîne encodée (le type d'encodage% xx, pas le codage & #xXXX) car certains agents utilisateurs ont moins de problèmes avec ces URI qu'avec les IURI (ils sont tous les deux parfaitement compris, et comme équivalent par les moteurs de recherche modernes) tandis que les agents utilisateurs plus modernes cacheront l'encodage des utilisateurs, ainsi vous obtenez la rétrocompatibilité sans blesser les utilisateurs des navigateurs modernes, ou des moteurs de recherche.

+0

Salut, Peut-être que ce n'est pas important, mais il semble mieux comme une URL. La chose est que ce problème est un mot hébreu dans la route pas dans un paramètre de chaîne de requête, il semble que le moteur code html sur tout rendu – TomerMiz

+0

Que voyez-vous exactement. L'encodage HTML ne change pas l'hébreu (mettez <% = Server.HtmlEncode ("שָׁלוֹם")%> dans une page et vous obtenez une sortie dans la source) sauf si nécessaire car vous utilisez un encodage de caractères dans lequel les lettres hébraïques sont impossibles (ce qui est une mauvaise idée). Cependant, les lettres hébraïques ne sont pas autorisées dans les URI uniquement dans les IURI (Internationalized URI). Il y a encore des navigateurs qui ne peuvent pas aller IURI -> URI, donc mettre un URI dans la source et laisser le navigateur aller -> IURI si sophistiqué n'est pas une mauvaise idée. –