Domanda

Sto cercando di globalizzare un'applicazione che ho sviluppato in asp.net mvc.

Attualmente sto usando file di risorse per archiviare i messaggi che presento all'utente (ad esempio, quando salvo qualcosa nel database, e all'utente viene mostrato il messaggio "Tutto ciò che è stato correttamente salvato", in cui il testo è archiviato un file di risorse in modo da poter localizzare facilmente il messaggio in un'altra lingua.

La domanda che ho è come farlo in una vista nel suo insieme? In questo momento, ho alcune visualizzazioni che sono principalmente HTML con una piccola quantità di logica di presentazione.

Qual è la migliore pratica per localizzare una vista? Ho dato un'occhiata qui:

L'approccio in quel post sembra un modo interessante di procedere, ma mi chiedo quanto sarà facile mantenere visualizzazioni separate per ogni lingua.

NOTA: non ho fatto molta globalizzazione o localizzazione in asp.net in generale, quindi potrebbero esserci alcune best practice del mondo non mvc che mi mancano.

È stato utile?

Soluzione

Abbiamo riscontrato lo stesso problema con la nostra nuova applicazione MVC e la nostra soluzione è qui . Mantenere punti di vista separati potrebbe essere un duro lavoro, ma mantenere lo stesso punto di vista con lingue diverse sembra essere altrettanto difficile, abbiamo deciso che mantenere l'intero punto di vista ci darebbe più potere, che sarebbe necessario per rilasciare un rilascio per i paesi asiatici.

Speriamo che ti aiuti.

Altri suggerimenti

Usa un App_LocalResources per ogni cartella della vista e posiziona le risorse per ogni vista nella cartella e ogni cultura.

Ulteriori informazioni qui .

Potresti provare a impostare i tuoi percorsi in modo che siano simili a:

    RouteTable.Routes.MapRoute(
        "Globalization",
        "{localization}/{controller}/{action}/{id}",
        new { localization = "en-us", controller = "Globalization", action = "Index", id = "" }
        );

e quindi avere la localizzazione come parametro per le tue azioni, proprio come id è un parametro.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top