ASP.NET mondialisation: culture = directive page « auto » avec l'accident de la culture neutre?

StackOverflow https://stackoverflow.com/questions/1314627

Question

Je suis en cours d'exécution dans un cas où une application ASP.NET à l'aide des installations de mondialisation intégré se bloque.

Sur une page ASP.NET avec la culture = directive "auto", un utilisateur avec une culture neutre comme langue du navigateur (comme "zh-Hans") produira l'exception suivante:

  

Culture 'zh-Hans' est une culture neutre. Il ne peut pas être utilisé dans   la mise en forme et l'analyse syntaxique et par conséquent   ne peut pas être défini comme le courant du fil   culture.

     

à System.Globalization.CultureInfo.CheckNeutral (CultureInfo   culture)   à System.Threading.Thread.set_CurrentCulture (CultureInfo   valeur)   à System.Web.UI.Page.set_Culture (String   valeur)   à ASP.somePage_aspx .__ BuildControlTree (somePage_aspx __ctrl)   à ASP.somePage_aspx.FrameworkInitialize ()

Toutes les idées? Garbage introduit dans les paramètres Culture / uiculture semblent généralement être ignorée, mais ce cas est à l'origine une exception non gérée.

Était-ce utile?

La solution

Tout d'abord, vous pouvez envisager la mise en UICulture = "auto", ainsi que la culture = "auto" dans votre déclaration <% @ Page% de>.

Maintenant, je ne vois pas ce repro sur mon .NET 4.0 (beta) installer, cela peut-être un bug de produit dans .NET 3.5.

Voici une excellente ressource pour l'apprentissage des cultures neutres et la différence entre UICulture et culture: http://blogs.msdn.com/ddietric/archive/2008/02/05/yacvcp-yet-another-currentculture-vs-currentuiculture- post.aspx

espère que cela vous.

Autres conseils

Je faisais le même problème et après bonking ma tête contre un mur pendant un certain temps trouvé la réponse juste sous mon nez.

La question que j'avais été de ne pas comprendre la différence entre CurrentCulture et CurrentUICulture . La différence étant CurrentCulture est utilisé pour formater les dates, les chiffres et effectuer le tri, CurrentUICulture est utilisé pour rechercher des chaînes spécifiques de la culture d'une ressource.

J'avais un code qui ressemblait à

return input.ToString("C", System.Globalization.CultureInfo.CurrentUICulture);

quand il devrait être été

return input.ToString("C", System.Globalization.CultureInfo.CurrentCulture);

Lorsque vous commencez à essayer à des éléments spécifiques de la culture de format avec une culture non spécifique vous obtiendrez le System.NotSupportedException.

Tu ne peux pas mettre la culture sur demande commencer? (Note:. Les demandes asp.net peuvent sauter entre les fils de sorte que vous devez brancher sur le fil en mouvement ainsi)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top