我想将字符串转换为msbuild目标中的base64,但msbuild告诉我转换类型不可用。在MSBuild中将字符串编码为Base64
<ItemGroup>
<Headers Include="Authorization">
<Content>$([Convert]::ToBase64String("user:password"))</Content>
</Headers>
</ItemGroup>
somone能帮助我吗?
编辑:
找到一个解决办法,我不喜欢:
<UsingTask TaskName="ToBase64" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll" >
<ParameterGroup>
<In ParameterType="System.String" Required="true" />
<Out ParameterType="System.String" Output="true" />
</ParameterGroup>
<Task>
<Code Type="Fragment" Language="cs">
Out = System.Convert.ToBase64String(System.Text.Encoding.Default.GetBytes(In));
</Code>
</Task>
</UsingTask>
<Target Name="WebRequest">
<ToBase64 In="$(auth)">
<Output PropertyName="authBase64" TaskParameter="Out" />
</ToBase64>
</Target>
有没有更好的办法?
你为什么不喜欢这个解决方案? – 0X0nosugar
的oneliner和太多的代码,我愿做这样的事情: <的HTTPHeader包括= “授权”> <数据= “基本$(EncodeBase64("用户名:密码"))”/> –
dodjango