我开发了名为 ExportSolution 的自定义MSBuild任务,我需要将自定义enum
PackageType 值传递给它。
PackageType 很简单:
public enum PackageType
{
Managed,
Unmanaged,
Both
}
MSBuild脚本也很简单:
<Target Name="ExportSolution" DependsOnTargets="BuildTasksDll">
<Message Text="Exporting solution '$(SolutionName)' to '$(SolutionPath)'" />
<ExportSolution SolutionName="$(SolutionName)" PackageType="Both"></ExportSolution>
</Target>
但是为该目标运行脚本我收到以下错误消息:
错误MSB4030:“Both”是“ExportSolution”任务的“PackageType”参数的无效值。 “PackageType”参数的类型为“Tasks.Common.PackageType”。
我应该以哪种格式将值传递给PackageType的变量以使此代码有效?
答案 0 :(得分:0)
我会像这样重构Enum。
public enum PackageType
{
Managed = 0,
Unmanaged = 1,
Both = 2
}
然后我会编辑我的构建脚本以使用整数作为选择方法。
<ExportSolution SolutionName="$(SolutionName)" PackageType=2></ExportSolution>
这可能不是您正在寻找的解决方案,但它可能适合您的需要。