Ich habe eine Silverlight-Bibliothek kompiliert, die in den Projekteigenschaften auf Silverlight Version 4 eingestellt ist. Sie verbraucht eine DLL mit Silverlight 4-Abhängigkeiten. Wenn ich auf einem System bin, auf dem nur Silverlight 3 installiert ist, kann ich die ursprüngliche Silverlight-Bibliothek ohne Fehler referenzieren. Zur Laufzeit erhalte ich eine Fehlermeldung über eine nicht vorhandene Klasse in der mscorelib. Dies ist das Verhalten, das ich erwarten würde, außer ich möchte nicht in der Lage sein, die Silverlight-Bibliothek überhaupt zu importieren, wenn es nicht Silverlight 4 läuft. Übersehe ich etwas darüber, wie Silverlight funktioniert, oder sollte es eine Möglichkeit geben, den Verbrauch meiner Bibliothek vor der Laufzeit auf einem System mit einer ungeeigneten Version zu verhindern?
Antwort
Zu viele Anzeigen?Um fair zu sein, in Silverlight eine Bibliothek ist eine Bibliothek ist eine Bibliothek, so dass es davon ausgeht, dass alle fehlenden Assemblies geliefert werden.
Ich denke, wir müssen dies auf ein "Feature" von Visual Studio zurückführen, da es die Abhängigkeiten nicht vollständig auf korrekte Zieltypen überprüft.