问题描述
我正在使用Visual Studio for Mac。
我发现了这个https://forums.xamarin.com/discussion/96777/how-to-set-info-plist-properties-with-vs-build-configurations,它描述了如何使用特定的构建配置来设置辅助plist文件。哪个效果很好。
<None Include="Entitlements.plist" Condition="'$(Configuration)' != 'Debug-Staging'" />
<None Include="Entitlements-staging.plist" Condition="'$(Configuration)' == 'Debug-Staging'">
<LogicalName>Entitlements.plist</LogicalName>
</None>
但是这种方法不适用于嵌入式资源...
<EmbeddedResource Include="ClientResources\myfolder\config.json"
Condition="'$(Configuration)' != 'Debug-Staging'" />
<EmbeddedResource Include="ClientResources\myfolder\config-staging.json"
Condition="'$(Configuration)' == 'Debug-Staging'">
<LogicalName>config.json</LogicalName>
</EmbeddedResource>
我还尝试了使用完整路径的LogicalName ... 另外,将条件放在ItemGroup上也无济于事。
编辑:
这是我创建的示例项目... https://github.com/JulesMoorhouse/ConfigBuildConfig/blob/master/ConfigBuildConfig/ConfigBuildConfig.csproj
如果选择了Debug-Staging
配置,它将读取config-staging.json
并在控制台中输出该值。
这些资料表明这应该可行...
- Same source,multiple targets with different resources (Visual Studio .Net 2008)
- https://social.msdn.microsoft.com/Forums/en-US/aa2d687d-0f6c-4a1c-af95-201f7e091f5c/embed-resource-conditionally-at-compiletime?forum=csharplanguage
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)