Wie bette ich eine XSLT-Datei in ein .NET-Projekt ein, um in die Ausgabe .exe aufgenommen zu werden?

7

Ich habe eine einfache C # -Konsolen-App, die eine XML-Datei einliest, die der Benutzer angegeben hat, führt eine XSLT-Transformation durch und gibt die Ergebnisse aus.

Wenn ich meine App an Benutzer verteile, möchte ich eine einzelne .EXE-Datei verteilen. Mein Quellcode besteht aus 3 Dateien: der .csproj-Datei, der .cs-Codedatei und einem .xslt-Stylesheet.

Wie kann ich csproj so einrichten, dass die .xslt in der Ausgabe "eingebettet" ist und vom Endbenutzer nicht gesehen oder geändert werden kann?

Scheint einfach, aber ich kann es nicht herausfinden und Google ist nicht zu nützlich.

    
Mike 17.11.2009, 13:50
quelle

2 Antworten

13

Sie können es in Ihre Baugruppe einbetten.

Fügen Sie die Datei in Ihrer Lösung hinzu und legen Sie die Build-Aktion auf die eingebettete Ressource fest.

Der Ort, an dem Sie die Datei lesen müssen, verwenden Sie Ссылка Assembly.GetManifestResourceStream ein Stream, den du in einen Fil schreiben oder direkt verwenden kannst.

Wenn Sie nicht sicher sind, welchen Namen Ihre Ressource hat, finde ich Assembly.GetManifestResourceNames nützlich, um alle Ressourcen aufzulisten.

    
Henrik Jepsen 17.11.2009, 13:55
quelle
29

Fügen Sie die Datei zu Ihrem Projekt hinzu, wählen Sie die Datei aus und gehen Sie zum Eigenschaftenfenster (drücken Sie F4 ). Setzen Sie die Build-Aktion auf "Eingebettete Ressource". Dadurch wird die Datei als Ressource in die EXE-Datei eingebettet.

%Vor%     
Fredrik Mörk 17.11.2009 13:54
quelle

Tags und Links