Frage

Ich verwende MSBuild, um automatisch eine für die Bereitstellung bereitgestellte Website zu erstellen und zu verpacken. Wenn ich mein Projekt über Visual Studio 2008 zusammenstelle und dann veröffentlichen, funktioniert alles gut.

Wenn ich jedoch MSBuild verwende, erhalte ich Fehler, da ASPNetCompiler versucht, ASPX- und ASCX -Dateien zu kompilieren, die nicht in meinem .csproj enthalten sind, aber immer noch in der Versionskontrolle existieren.

Ich weiß, dass ich sie einfach aus der Versionskontrolle entfernen kann, aber kann mir jemand sagen, warum diese Dateien zusammengestellt werden?

Hier ist meine MSBuild -Aufgabe.

    <AspNetCompiler                
     TargetPath="$(PackageDir)\Web"
     VirtualPath="/"
     PhysicalPath="$(buildDirectory)\Web"
     Force="true"
     />

Vielen Dank!

War es hilfreich?

Lösung

Das Aspnetcompiler Die Aufgabe, die _aspnet_compiler.exe_ wickelt, kompiliert alle "kompilierbaren" Dateien in der Anwendung, anstatt nur diese Dateien in der Datei zu kompilieren .csproj.

Das Werbegeschenk ist, dass keine der Befehlszeilenparameter für die ausführbare Datei a .csproj als Eingabe, nur Pfade. (Ich nehme an, man könnte argumentieren, dass es nach einem suchen würde .csproj Im Verzeichnis, aber das ist unwahrscheinlich, da es seine eigenen Probleme einführen würde, z. B. was zu tun ist, wenn jemand zwei Projektdateien in ein Verzeichnis gestellt hätte.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top