Das ist meine erste Frage hier!
Ich habe ein ASP.NET MVC 3 Projekt mit einem Eigenschaftsordner, der einige .resx Dateien enthält, die benutzt werden, um Inhalte in meinen Ansichten nach Sprache (en / es) zu unterscheiden. Ich arbeite in VS2010 mit .Net 4.
Wenn ich die Anwendung auf dem Server installiere, finde ich, dass keine resx-Dateien veröffentlicht werden, und stattdessen habe ich einige .dll-Dateien.
Ich habe die Build-Aktion auf Embedded resource
, Do not copy
auf das Ausgabeverzeichnis und PublicResXFileCodeGenerator
als benutzerdefiniertes Tool in den Eigenschaften der .resx-Dateien eingestellt.
Ich möchte RESX-Dateien auf dem Server haben und sie ohne erneute Kompilierung oder erneute Bereitstellung bearbeiten können. Die Ansichten sollten diese Änderungen verwenden.
Wie kann ich das tun?
Danke für Ihre Hilfe !!
Fügen Sie die resx-Dateien in Ihre App_GlobalResources ein und ändern Sie die "Build Action" in Content und "Copy To Output Directory" in false. Stellen Sie sicher, dass das "Benutzerdefinierte Tool" auf GlobalResourceProxyGenerator
festgelegt istDas sollte sie sogar zur Laufzeit veränderbar machen.
Sie können einfach xpath verwenden, um über sie abzufragen, die Schlüssel, Werte und Kommentare zu übernehmen und sie nach Wunsch mit einem XDocument zu bearbeiten.
Sie sollten auch wissen, dass so etwas bei der Veröffentlichung von Visual Studio nicht funktioniert, da App_GlobalResources mit der vorkompilierten Website nicht erlaubt ist.
Tags und Links asp.net-mvc-3 .net visual-studio-2010 resx deployment