Ich entwickle eine Anwendung, die mit ClickOnce bereitgestellt werden soll. Nach dem Downgrade von .NET 4.5 auf .NET 4.0 und Ersetzen der Reparatur von fehlerhaften Referenzen habe ich jetzt Probleme mit dem Bereitstellungspaket. Einige Dateien, vor allem System.Net.Http.dll
, werden nicht mit der Anwendung bereitgestellt. Ich habe einige Überprüfungen gemacht, kann aber nicht schließen, warum genau das passiert. Mein Verdacht ist, dass das Paket mit der Erwartung erstellt wird, dass diese Assembly bereits auf dem Zielcomputer existiert. Dies wäre sinnvoll, wenn das Zielframework .NET 4.5 wäre, aber nicht jetzt, dass es .NET 4 ist. Seltsamerweise wird System.Net.Http.Extensions.dll
korrekt bereitgestellt.
Einstellungen und Versionsnummern sind für beide Dateien gleich:
Es wird auf dasselbe Paket verwiesen:
%Vor%Zielplattform ist .NET 4, und Voraussetzung für die Bereitstellung ist auch .NET 4 und ein KB-Update.
Datei wird nicht einmal im Dialogfeld "Anwendungsdateien" angezeigt:
Irgendwelche Ideen? Ich könnte nur versuchen, die Assembly als eine Inhaltsdatei bereitzustellen, wenn alles andere fehlschlägt. Das Entfernen und erneute Hinzufügen der Referenz hat keinen Unterschied gemacht.
Gesendete Nachricht von Microsoft zu Visual Studio-Unterstützungsthread sagt das:
Dies wird in der nächsten Aktualisierung von Visual Studio 2013 behoben. Bis dahin müssen Sie die Problemumgehung des Hinzufügens der Assemblies als Link verwenden.
Ich fand die nächste Lösung (Problem 8) :
Dies tritt auf, weil ClickOnce bestimmte erforderliche Assemblys nicht bereitstellen kann. Um das Problem zu umgehen, gehen Sie folgendermaßen vor:
In meinem Fall genug, um nur eine Bibliothek hinzuzufügen System.Net.Http .