Lokalizacja MVC4. Dostęp do Resx z widoku
Moim zdaniem chciałbym uzyskać dostęp do ciągów zasobów z określonego lokalnego zasobu w tym pliku .. Tak jak to wiesz z formularzy internetowych:
(string)GetLocalResource("Title");
Bezbolesne i gładkie. Struktura obsługuje plik .resx, który ma zostać pobrany z rozszerzenia kodu informacji o kulturze (.en-EN.resx).
Czy to możliwe w MVC4 z widokiem Razore? I jak?
Iv'e zauważył, że mogę ustawićCustom Tool
właściwość w pliku .resx doPublicResXFileCodeGenerator
. W ten sposób mogę uzyskać do niego dostęp z widoku. Przykład: Stworzyłem 2 pliki zasobów dla index.cshtml w języku duńskim i angielskim. Tak jak w przypadku formularzy internetowych. Oto, co chciałbym napisać (Custom Tool Name
właściwość ustawiona na „ViewResource”):
@ViewResource.Title
Bam. Jeśli obecna kultura jest duńska, tytuł będzie „Forside”, a jeśli angielski będzie „Home”. Ale zamiast tego jedyne opcje, jakie otrzymałem, to wybranie konkretnego pliku. Z tego wybierz żądany ciąg:
@ViewResource.Index_cshtml_en-EN_resx.Title
To nie jest dynamiczne. Pomyślałem więc, że mógłbym stworzyć klasę rozszerzenia, która zastąpiłaby en-EN / da-DK. Ale to naprawdę wydaje się stosunkowo dużo pracy dla czegoś tak „prostego” i już dobrze i łatwo zintegrowanego z formularzami internetowymi. Musi być inny sposób. Z pewnością zespół mvc ma dla nas jakiś sprytny mechanizm jak wszystko inne :)