Wie kann ich den Wert der MsBuild-Variable erhalten (zB $ (MSBuildToolsPath), $ (MSBuildAssemblyVersion), $ (TargetFrameworkIdentifier) usw.). Ich muss den Wert auf der Csharp-Seite abrufen, aber ich kann auf Msbuild.exe zugreifen, wenn es nicht aus dem Csharp-Code verfügbar ist.Wie bekomme ich den Wert der MsBuild-Variablen
0
A
Antwort
1
BuildManager und dergleichen sind nur zum Bauen; MS entschied sich, die MsBuild API in verschiedenen Namespaces nach Funktionalität aufzuteilen. Sobald Sie wissen, dass es nicht zu schwierig ist herauszufinden, was Sie brauchen: Sie müssen nur Eigenschaften auswerten, so dass die Project Klasse aus dem Evaluierungs-Namespace wie die richtige Wahl erscheint. Es hat ein Properties-Member, das alle Eigenschaften freigibt:
var project = new Microsoft.Build.Evaluation.Project(@"my.vcxproj");
foreach(var property in p.Properties)
{
System.Console.WriteLine("{0} = {1}",
property.Name, property.EvaluatedValue);
}
Verwandte Themen
- 1. Wie bekomme ich den Combobox-Wert?
- 2. Wie bekomme ich den Wert eines DynamicControl?
- 3. Wie bekomme ich den Wert von @DiscriminatorColumn()?
- 4. Wie bekomme ich den Wert von Spinner
- 5. Wie bekomme ich den Wert eines td
- 6. Wie bekomme ich den Wert von @QueryParam
- 7. Wie bekomme ich den Wert eines XCUIElement?
- 8. Wie bekomme ich den Wert der nächsten Eingabe Jquery
- 9. Wie bekomme ich den Text eines Radiobuttons (nicht der Wert)
- 10. Wie bekomme ich den Wert von TD mithilfe der Hierarchie?
- 11. Wie bekomme ich den numerischen Wert von der Enum?
- 12. Wie bekomme ich den maximalen Wert von der Datenbank
- 13. Wie bekomme ich den Wert aus der Dropdown-Box django?
- 14. Wie bekomme ich jeden Wert der Tabelle?
- 15. Warum bekomme ich den falschen Wert der Bildbreite in UIImageView
- 16. d3.js Wie bekomme ich den minimalen Wert der Domäne der Skala, wenn ich nice() verwende
- 17. Wie bekomme ich den Wert von id in twitter typeahead?
- 18. Wie bekomme ich den Wert von einem Textclock
- 19. Wie bekomme ich den "Use Default" -Wert programmatisch?
- 20. Wie bekomme ich den Wert eines Kontrollkästchens von JQuery?
- 21. Wie bekomme ich den Session-Wert in EJS
- 22. Wie bekomme ich den Wert für 'Option Compare' zur Laufzeit?
- 23. Wie bekomme ich den Verzeichnisnamen von Inode-Wert in c?
- 24. cpp-wie bekomme ich nur den Wert von c_str()
- 25. Wie bekomme ich den Wert von translateX und translateY?
- 26. Wie bekomme ich den Wert für die extjs-Combobox?
- 27. Wie bekomme ich den Wert von WMD-Editor?
- 28. Wie bekomme ich den eingegebenen Wert von activeTextField in Yii?
- 29. Twitter Bootstrap: Wie bekomme ich den ausgewählten Wert von Dropdown?
- 30. Wie bekomme ich den erwarteten Wert von diesem
Es ist nicht wirklich klar, was Sie wollen - versuchen Sie, ein Msbuild-Projekt programmatisch zu laden/zu erstellen? Was hast du bisher versucht? Es gibt genügend Beispiele dafür, wie man programmgesteuert C# erstellt und Projekteigenschaften erhält/setzt. – stijn
@stijn Ja, ich führe das Msbuild-Ziel von C# -Seite von BuildManager. Dazu muss ich alle Ziele aus der Projektdatei holen. Aber msbuild unterstützt das Importieren von Projekten, die msbuild-Variablen verwenden können. Also muss ich die Fähigkeit haben, den Wert der Variablen zu erhalten ... – Serg046