Übergeben Sie Elementgruppenelemente an den benutzerdefinierten Task-Array-Parameter in msbuildC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Übergeben Sie Elementgruppenelemente an den benutzerdefinierten Task-Array-Parameter in msbuild

Post by Anonymous »

Ich habe eine benutzerdefinierte Aufgabe in C# geschrieben. Für diese benutzerdefinierte Aufgabe ist ein Argument wie folgt definiert:

Code: Select all

public required string[] StringArray { get; set; }
Dann habe ich in einer .csproj-Datei diese Definitionen:

Code: Select all









Wenn die Aufgabe nun ausgeführt wird, erwarte ich, dass die Werte „A“, „B“ und „C“ in der Eigenschaft StringArray vorhanden sind und dass die Aufgabe einmal ausgeführt wird. Beim Erstellen des Projekts wird die Aufgabe jedoch für jedes Element in der Elementgruppe aufgerufen und dann nur ein einzelnes Element an die Eigenschaft übergeben. In diesem Beispiel wird die Aufgabe also dreimal ausgeführt, wobei die Werte „A“, „B“ und „C“ separat an jeden Aufgabenaufruf übergeben werden.
Ich habe versucht, es mit Transformationen richtig hinzubekommen. Wenn ich die Aufgabe so aufrufe:

Code: Select all



dann werden alle drei Elemente an die StringArray-Eigenschaft meiner benutzerdefinierten Aufgabe übergeben, was ich möchte. Gibt es eine Möglichkeit, dies zu erreichen? Ich muss die StringElements in einer Elementgruppe haben, wie sie jetzt sind, da sie in dieser Form an anderer Stelle im Erstellungsprozess benötigt werden.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post