2017-11-17 6 views

Antwort

0

Wenn Sie Assets Dateien aus einer .NET-Standard-Bibliothek erhalten, müßten Sie markieren die Datei als EmbeddedResource und Copy Always verwenden kann .

enter image description here

Dann benötigen Sie eine Methode hinzufügen, diese Dateien in Ihrer .NET-Standard-Bibliothek Klasse zu erhalten. Zum Beispiel:

namespace ClassLibrary1 
{ 
    public class Class1 
    { 
     public static Stream GetImage() 
     { 
      var assembly = typeof(Class1).GetTypeInfo().Assembly; 
      Stream stream = assembly.GetManifestResourceStream("ClassLibrary1.Assets.dog.jpg"); 
      return stream; 
     } 
    } 
} 

Bitte beachten Sie diese Zeile assembly.GetManifestResourceStream("ClassLibrary1.Assets.dog.jpg");

Die ClassLibrary1 ist der Namespace, die Assets die Ordner Assets in der Bibliothek Projekt, das dog.jpg die Datei.

enter image description here

In meinem Beispiel habe ich die Bilddateien im Ordner Assets setzen, wenn es in Stammverzeichnis des Projekts setzen, dann sollte diese Zeile wie folgt sein:

assembly.GetManifestResourceStream("ClassLibrary1.dog.jpg");

Sie könnten den folgenden Code verwenden, um alle eingebetteten Ressourcen zu sehen:

foreach (var res in assembly.GetManifestResourceNames()) 
{ 
    System.Diagnostics.Debug.WriteLine("found resource: " + res); 
} 

Danach können Sie in Ihrem Hauptprojekt anrufen diese Methode, um diese Dateien zu erhalten.

+0

Danke für die Antwort, aber ich würde gerne diese Vermögenswerte in XAML wie in uwp Projekt irgendeine Lösung dafür verwenden? – Lockness

+0

@Lockness Sie können diese Dateien in der XAML-Seite nicht direkt aus der .NET Standard-Bibliothek verwenden. –

+0

Danke für die Antwort – Lockness

Verwandte Themen