Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

C# - Hilfe bei Sprachdateien

Empfohlene Antworten

Veröffentlicht

Hallo Kollegen,

OK, was ich möchte ist, dass ich in einer Library-Anwendung die Möglichkeit habe, Fehler in Englisch und Deutsch darzustellen. Nun bin ich aus der "Java-Welt" gewöhnt, hier Propertyfiles zu erstellen und diese in den Classpath zu setzen, das war es. Meine Frage hier lautet, wie ist die Vorgehensweise bei C# (also in einer Console- oder Libraryanwendung). Ich habe gelesen, dass ich jede Textdatei (Key-Value-Pairs) mit ResGen explizit in eine *.resource-Datei konvertieren muss. Ist dies richtig? Wie schaut es mit den *.resx-Dateien aus. Was ist der Unterschied? OK, ich habe mit ResGen Resourcesfiles erstellt. Jetzt würde ich gerne mittels ...

//ResourceManager res = new ResourceManager("SiteNavigationErrors", Assembly.Load("Util"));

ResourceManager res = new ResourceManager("Util.SiteNavigationErrors", Assembly.GetExecutingAssembly());

//Thread.CurrentThread.CurrentCulture = new CultureInfo("de"); 

//Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de");

Console.WriteLine(res.GetString("ERR_001"));

... darauf zugreifen .. aber egal, welche Assembly ich lade, immer bekomme ich die Fehlermeldung:

Could not find any resources appropriate for the specified culture or the neutra

l culture. Make sure "Util.SiteNavigationErrors.resources" was correctly embedd

ed or linked into assembly "Util" at compile time, or that all the satellite ass

emblies required are loadable and fully signed.

Was muss ich hier noch machen? Das kann doch nicht so schwer sein. Die Resourcefiles sind doch embeded. Muss ich hier den voll-qualifizierten Pfad angeben?

OK, ich erkläre kurz mal die Zusammenhänge.

Ich habe Consolenanwendung (Accessor), welche auf KLasse in Libraryanwendung (Util) zugreift. In Util habe ich die Resourcefiles im Pfad "Web/Service/SiteNavigation". Wie kann ich darauf zugreifen. Danke schon mal für eure Antworten. Leider kann ich im Netz keine Antwort finden.

Gruß

Hi,

ich Dich zwar nicht ganz verstanden (ist schon spät :rolleyes: ), aber wenn es nur um in Ressourcen ausgelagerte Strings geht, empfehle ich Dir dieses AddOn.

Die mit deutschen Meldungen gefüllte .resx Datei (zB Fehlermeldungen.de.resx) kopiere ich mir dann nach "Fehlermeldungen.en.resx", und übersetze die Meldungen in dieser Datei mit "WinRes" aus dem .Net SDK. Die neue resx muss natürlich dem Projekt hinzugefügt werden, kannst aber auch mit dem AddIn von oben machen.

Die Anwendung greift je nach Spracheinstellung auf die jeweilge .resx Datei zu.

Falls Du eine Standartsprache haben willst, brauchst Du eine resx ohne Länderkürzel, also "Fehlermeldung.resx". Die wird dann verwendet wenn die Anwendung eine Sprache verwendet, zu der es keine "Fehlermeldung.LÄNDERKÜRZEL.resx" gibt.

Da sich meistens etwas an der "originalen" resx ändert, benutze ich dieses Tool um die diversen resx - Dateien zu syncronisieren. Sonst müsste ich ja nach jedem neuen String entweder die kompletten Key/Value paare nachflegen oder alles neu übersetzen.

Ich hoffe Dich richtig verstanden zu haben ;)

mfg

realgun

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.