Cos'è system.globalization E qual è la differenza tra esso e la localizzazione
-
07-07-2019 - |
Domanda
e per rendere le cose un po 'più interessanti, qual è l'approccio migliore per la globalizzazione nell'app Asp.net Mvc
Soluzione
Globalizzazione riguarda la produzione di una mappa da stringhe o identificatori a traduzioni in altre lingue, mentre Localizzazione riguarda l'utilizzo di quella mappa per trovare la traduzione corretta. La globalizzazione avviene durante lo sviluppo, la localizzazione avviene in fase di esecuzione.
Non ho molta esperienza con ASP.NET, ma ...
Per quanto riguarda come , l'approccio più comune che vedo è avere un dizionario per lingua per assembly (o per componente dell'interfaccia utente), in cui i valori sono stringhe localizzate. Le chiavi sono in genere membri di sola lettura su una classe statica o enum. Esiste spesso una classe di convenienza i cui membri sono la mappa dagli identificatori ai messaggi localizzati.
I dizionari sono generalmente memorizzati in file separati e in un formato destinato ai traduttori umani.
Altro qui: http://msdn.microsoft.com/en-us /library/aa478974.aspx
Altri suggerimenti
Dalle Domande frequenti su W3C I18n :
Localizzazione si riferisce all'adattamento di un prodotto, di un'applicazione o del contenuto di un documento per soddisfare i requisiti linguistici, culturali e di altro tipo di un mercato target specifico (un "locale").
L'internazionalizzazione (o globalizzazione) è la progettazione e lo sviluppo di un prodotto, un'applicazione o contenuto di documenti che consente una facile localizzazione per il pubblico di destinazione che varia in cultura, regione o lingua.
Non ho mai globalizzato un'applicazione ASP.NET MVC, quindi scusate se non posso aiutarvi lì.
Lo spazio dei nomi System.Globalization contiene classi che definiscono informazioni relative alla cultura, tra cui la lingua, il paese / regione, il calendari in uso, i modelli di formato per date, valuta e numeri e il criterio di ordinamento per le stringhe.
Qual è la differenza tra questa e la localizzazione? Immagino che possa essere spiegato come la differenza tra un'auto e una città. Uno è una destinazione e l'altro è il modo in cui ci si arriva.
Non ho usato ASP.NET MVC, ma ho usato la monorotaia che è simile. Se volessi localizzare un'app MR, probabilmente userei un file separato dell'albero della vista. Quindi, mentre, solo in inglese, avrei:
\Views\Home\*.asp
\Views\Admin\*.asp
\Views\Products\*.asp
per un'app internazionalizzata, avrei qualcosa del tipo:
\en\Views\Home\*.asp
\en\Views\Admin\*.asp
\en\Views\Products\*.asp
\de\Views\Home\*.asp
\de\Views\Admin\*.asp
\de\Views\Products\*.asp
\es\Views\Home\*.asp
\es\Views\Admin\*.asp
\es\Views\Products\*.asp