dotnet/msbuild

can't use enum parameter type from arbitrary assembly

Open

#316 geöffnet am 23. Okt. 2015

Auf GitHub ansehen
 (1 Kommentar) (1 Reaktion) (1 zugewiesene Person)C# (1.364 Forks)batch import
help wantedtriaged

Repository-Metriken

Stars
 (5.062 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 11T 7h) (125 gemergte PRs in 30 T)

Beschreibung

I have a custom msbuild task that specifies a public parameter of an enum type (CompressionLevel). msbuild rejects the parameter, even though the assembly reference is listed.

D:\CustomTasks.proj(52,25): error MSB4022: The result "System.IO.Compression.CompressionLevel" of evaluating the value "System.IO.Compression.CompressionLevel" of the "ParameterType" attribute in element <Parameter> is not valid. 
<UsingTask TaskName="ZipDirectory" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
 <ParameterGroup>
  <Directory ParameterType="System.String" Required="True"/>
  <DestinationZipFile ParameterType="System.String" Required="True"/>
  <CompressionLevel ParameterType="System.IO.Compression.CompressionLevel" />
 </ParameterGroup>
 <Task>
  <Reference Include="System.IO.Compression.FileSystem"/>
  <Code Source="$(BuildScriptsDirectory)\ZipDirectory.cs"/>
 </Task>
</UsingTask>

Contributor Guide