You need to set the Thread.CurrentThread.CurrentUICulture
property instead of, or in addition to, the CurrentCulture
property.
C# / Razor - Access localized string resources from a RazorEngine template
-
19-10-2022 - |
Frage
I'm building dynamic HTML emails by using RazorEngine to populate a CSHTML template. I need to send emails in multiple languages, and I'd like to use localized string resources within my template to switch languages, like so:
@Resources.EmailTemplate.OrderNumberLabel
How can I specify the culture used by RazorEngine? It always appears to use the default culture when pulling in strings. I've tried setting the thread culture before parsing with no luck:
System.Threading.Thread.CurrentThread.CurrentCulture System.Globalization.CultureInfo.CreateSpecificCulture(culture);
Note: I've seen other implementations that have used a different CSHTML file for each language, but I'd like to keep the localized content and the markup separated.
Lösung
Andere Tipps
Please look at The localized templates service here http://netmvc.blogspot.ca/2012/04/localizable-text-template-engine-using.html
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow