Ich habe ein Problem mit einer Klassenbibliothek; Ich bereite eine Bibliothek mit einer Schnittstelle vor, die eine spezifische Datenspeichersignatur darstellt. Der Zweck besteht darin, die Schnittstelle als Grundlage für die Implementierung einer Reihe spezifischer Klassen zu verwenden, die Konfigurationsinformationen in verschiedenen Formaten (Textdateien, XML-Dateien usw.) speichern, während das gleiche Nutzungsprofil für die Anwendung beibehalten wird. Ich habe ein Problem. In diesem Fall versuche ich, eine XML-Datei als Ressource einzubetten - diese Datei ist eine Art von Format zum Speichern von Konfigurationsdaten. Die Datei befindet sich als eingebettete Ressource in einem Unterordner des Projekts, wie in der folgenden Abbildung dargestellt.Erstellen einer eingebetteten Ressource in der C# -Klassenbibliothek, wenn sie nicht existiert
Im folgenden Code-Snippet wird gezeigt, wie ich die Funktionalität bisher umgesetzt haben.
Im Abschnitt "XML vorbereiten" versuche ich einen Stream von der eingebetteten Ressource zu lesen. Nach dem Lesen wird getestet, ob tatsächlich ein Stream erstellt wurde. Wenn die Datei gefunden wird, enthält der manifestResourceStream die XML-Daten - soweit so gut. Das Problem tritt auf, wenn die Datei aus irgendeinem Grund versehentlich gelöscht wurde - in diesem Fall möchte ich eine neue Datei als eingebettete Ressource erstellen, um die gelöschte Datei zu ersetzen. Das soll im bedingten Teil in dem Teil geschehen, der als "???" angezeigt wird.
Ich habe alles versucht, was ich denken konnte, suchte Google nach Antworten, usw. - ohne Erfolg.
Hat jemand eine Ahnung, wie dies erreicht wird? Jede Hilfe wird sehr geschätzt.
Vielen Dank im Voraus.
Mit freundlichen Grüßen.
Die Prämisse einer gelöschten eingebetteten Ressource scheint lächerlich. Eingebettete Ressourcen sind Teil der DLL und niemand sollte die DLL bearbeiten. Einer der Gründe für das Einbetten von Ressourcen, anstatt sie als separate Dateien bereitzustellen, besteht darin, zu verhindern, dass Benutzer sie ändern oder löschen. Warum sind Sie besorgt über die Möglichkeit, dass die Ressource gelöscht wird? Ich würde diese Möglichkeit einfach ignorieren. – BlueMonkMN