Desidero localizzare/globalizzare i campi nella mia pagina di accesso. Sto usando ASP.NET MVC 3 Preview 1 con il motore di visualizzazione del rasoio.Localizzazione campi/attributi su AccountModel per ASP.NET MVC
Alcuni retroscena
Prima di tutto, ho impostato il mio percorso e ha aggiunto attribuire una localizzazione gestore in modo che io possa scrivere http://mysite.com/{lang}/{controller}/{action}/{id}
. Ora funziona tutto bene. Nella mia cartella Views
ho aggiunto una cartella Home con un numero corrispondente App_LocalResources
finora così buono. Posso persino aggiungere file di lingua per diverse lingue come Index.resx
e Index.sv.resx`.
Il problema
Avere un file chiamato Account.resx
nella radice del App_GlobalResources
Io naturalmente immagino dovrei essere in grado di accedere a tale dalle mie pagine. Nel mio AccountModel.cs
(che è venuto con il progetto di installazione/template) ho aggiunto quanto segue alla LogOnModel
public class LogOnModel
{
[Required]
[Display(Name = "UserName", ResourceType = typeof(Account))]
public string UserName { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password", ResourceType = typeof(Account))]
public string Password { get; set; }
[Display(Name = "RememberMe", ResourceType = typeof(Account))]
public bool RememberMe { get; set; }
}
Ho due file nel mio App_GlobalResource
- Account.resx
- Account.sv .resx
E in effetti prende il testo dal file inglese/predefinito. Ma quando aggiungo/sv/al mio URL o anche assicurarmi che la cultura sia svedese, non cambia la lingua in quello che è nel mio "Account.sv.resx".
Un esempio di quello che potrebbe essere nelle LogOn.cshtml
<div class="editor-label">
@Html.LabelFor(m => m.UserName)
</div>
Tutte le idee?
ho visto questo, ma che non mi aiuta molto in quanto 'DisplayAttribute' non funziona correttamente in MVC 3. –
Non importa , l'azione di compilazione per un file di risorse era errata. Grazie. –