繁体   English   中英

MSBuild和CSPROJ:如何调整C#文件的包含/编译

[英]MSBuild and csproj: how to conditioning c# file inclusion/compiling

我有一个.NET标准库Xamarin的Android + iOS的应用程序,我想这取决于封装在AndroidManifest.xml /中的info.plist 束标识符来调理的一些文件的.cs编译在我的图书馆。 这是因为我需要为具有不同配置的更多客户定制应用程序。 条件还应考虑我的配置是“调试”还是“发行”(仅在“ 发行”配置中需要排除文件)。

<Compile Include="ConditionalFile.cs" Condition="'$(Configuration)' == 'Debug'" />

调试的条件是,我需要添加某种“或子句”并填充它,也许需要在编译apk / ipa时启动bash脚本。

任何想法?

我发现的一种解决方案是:

  • 具有我的应用程序ID的自定义属性: <PackageId>it.mpic.x</PackageId>

  • bash脚本,该脚本在发布之前使用正确的app-id更改<PackageId>元素

  • 在以下Condition="'$(Configuration)' == 'Debug' Or '$(PackageId)' == 'it.mpic.x1'"编译条件: Condition="'$(Configuration)' == 'Debug' Or '$(PackageId)' == 'it.mpic.x1'"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM