Gestione della lingua
11 maggio 2023
IIS | ASP.net C# | net framework 4.7 | web form | mvc

I file di risorse (.resx) rappresentano la soluzione naturale all'implementazione del supporto multilingua. Si tratta, in effetti, di dizionari di tipo chiave univoca \ valore \ commento scelti automaticamente durante il processo di caricamento delle viste mediante il confronto dell'estensione dei file .resx con il valore della stringa rappresentante la uiculture corrente. A seguire un semplice esempio di applicazione che si propone di tradurre il testo relativo alla politica dei cookie presentato in calce alla solita vista condivisa "_Layout.cshtml".
Per prima cosa si crei una cartella all'interno della root della soluzione intitolandola, ad esempio, "resources":




Si aggiunga un file di risorse intitolandolo, ad esempio, "_Layout.resx" e se ne modifichi la proprietà "Spazio dei nomi dello strumento personalizzato" con il nome della cartella "resources".




Dal pannello delle proprietà ci si sposti a questo punto all'interno della pagina di configurazione del file _Layout.resx. All'interno del menu a discesa, in alto a destra, intitolato "Modificatore di accesso" si selezioni il valore "Public".
In fine, si aggiunga una nuova chiave intitolata "coockiepolicy" e valore "utilizziamo esclusivamente cookie di natura tecnica".




_Layout.resx rappresenta la radice del nostro dizionario linguistico. I successivi file di risorse, uno per ciascuna lingua di nostro interesse, dovranno essere aggiunti nella stessa cartella resources con la seguente convenzione:

["_Layout"] +["."] + ["uiculture"] + [.resx]

esempio:

_Layout.it-IT.resx (italiano)
_Layout.en-US.resx (inglese USA)

Si aggiungano ora i seguenti due file di risorse impostando per ciascuno di essi solo la proprietà "Spazio dei nomi dello strumento personalizzato" con il nome della cartella "resources":




  <footer >
    .
    .
    <p class="small bi-cookie"><em class="ms-2">@resources._Layout.coockiepolicy</em></p>
 </footer>



Torna all'inizio