So erhalten Sie IntermediateOutputPath von der Visual Studio-Erweiterung und dem neuen csproj-Format

9

Ich habe eine neue Projektdatei csproj , die IntermediateOutputPath überschreibt. Es sieht so aus:

%Vor%

Das Problem ist, dass meine Visual Studio-Erweiterung nicht auf IntermediateOutputPath -Eigenschaft zugreifen kann. Project.Properties scheint im Vergleich zum alten Projektformat viel weniger zu haben.

Ich habe auch project.ConfigurationManager.ActiveConfiguration.Properties mit dem ähnlichen Erfolg probiert.

Gibt es eine Möglichkeit, diese Informationen aus Visual Studio-Erweiterung zu erhalten?

    
ionoy 03.10.2017, 09:05
quelle

1 Antwort

3

Also habe ich eine einfache Erweiterung erstellt, um alle Eigenschaften zu drucken

%Vor%

Und das gab unten Ausgabe

%Vor%

Im CS-Projekt hatte ich

hinzugefügt %Vor%

Wie Sie sehen können, wird IntermediateOutputPath als IntermediatePath angezeigt. So können Sie

verwenden %Vor%

Edit-1 - .NET-Standardprojekt

Bearbeiten-2 - 12-Aug-2017

Nachdem ich mich also eingehender mit dem Problem befasst habe, habe ich festgestellt, dass die Eigenschaft eine MSBuild-Eigenschaft als solche und keine CSProject-bezogene Eigenschaft ist. Deshalb sehen Sie es nicht im Attribut Eigenschaften. Dies erfordert eine etwas andere Richtung, um den Wert zu erhalten. IVsBuildPropertyStorage.GetPropertyValue

%Vor%

Und später verwenden Sie diese Methoden, um den Wert

zu erhalten %Vor%

Und das gibt mir den richtigen Wert der Eigenschaft

    
Tarun Lalwani 10.10.2017, 06:14
quelle

Tags und Links