ho sviluppato su misura compito MSBuild chiamato ExportSolution e ho bisogno di passare personalizzati enum
PackageType valore ad essa.Passo variabile di tipo personalizzato per personalizzato MSBuild compito
Il PackageType è semplice:
public enum PackageType
{
Managed,
Unmanaged,
Both
}
Lo script MSBuild è troppo semplice:
<Target Name="ExportSolution" DependsOnTargets="BuildTasksDll">
<Message Text="Exporting solution '$(SolutionName)' to '$(SolutionPath)'" />
<ExportSolution SolutionName="$(SolutionName)" PackageType="Both"></ExportSolution>
</Target>
sceneggiatura Tuttavia corsa per quel bersaglio sto ricevendo seguente messaggio di errore:
errore MSB4030: "Both" è un valore non valido per il parametro "PackageType" ter del task "ExportSolution". Il parametro "PackageType" è di tipo "Tasks.Common.PackageType".
In quale formato dovrei passare il valore alla variabile di PackageType per far funzionare questo codice?
Hai provato a passarlo come nome di tipo completo, ad esempio "Tasks.Common.PackateType.Both'? Un'altra soluzione potrebbe essere passarla come stringa e quindi analizzarla all'interno dell'attività – Pako
@Pako Ho provato un simile approccio, non c'è differenza, purtroppo ... – shytikov
'Both' ha un valore di 2, quindi passa '2' nel la proprietà potrebbe funzionare. Questo non sarà molto leggibile, quindi, penso che il suggerimento di Pako di rendere la proprietà una stringa e analizzarla all'interno dell'attività potrebbe essere migliore . –