- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我们希望为我们的项目在 Visual Studio 中提供两个自定义平台开关(配置管理器中的平台下拉菜单)。
例如,一种用于“桌面”,另一种用于“网络”。目标构建任务然后根据平台切换以自定义方式编译代码。我们不想添加到 Debug Release 开关,因为我们需要为每个桌面和 Web 平台添加这些开关。
我们找到了一种尝试此方法的方法,即修改 .csproj 文件以添加类似这样的内容
<Platform Condition=" '$(Platform)' == '' ">Desktop</Platform>
并添加属性组,例如
<PropertyGroup Condition=" '$(Platform)' == 'Web' ">
<DefineConstants>/define Web</DefineConstants>
<PlatformTarget>Web</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'Desktop' ">
<DefineConstants>/define Desktop</DefineConstants>
<PlatformTarget>Desktop</PlatformTarget>
</PropertyGroup>
但是还是不行,编译器报错
/platform 的“桌面”选项无效;必须是 anycpu、x86、Itanium 或 x64
那么它是否必须是这些选项之一,我们不能添加我们的自定义平台吗?
有没有人能做到这一点?任何指示都会有所帮助。
更新:使用 DebugDesktop 和 ReleaseDesktop 会使用户使用起来更加复杂。因为“桌面”和“网络”实际上是平台,而且还可以在下拉列表中添加新平台(即 ),所以我相信“平台”开关应该用于完全相同的目的。
最佳答案
也许这个主题在三年后对某些人来说会很有趣。我在配置构建平台时遇到了类似的困难并解决了这些问题。
您给出的错误是因为 PlatformTarget 属性是使用 Desctop 设置的,而不是因为 Platform 属性。这两个属性的含义略有不同。第一个实际上最终指示构建过程的所有参与者应该使用哪个过程架构,而第二个允许在 IDE 中自定义构建环境。
当在 Visual Studio 中创建项目时,ProcessTarget 属性可能默认设置为 PropertyGroups 下的 AnyCPU,具有像这样的条件限制 "'...|$(Platform)' == '... |AnyCPU'”。但它并不强制你做同样的事情。 ProcessTarget 属性可以很容易地设置为具有其他值的平台属性的 AnyCPU。
考虑到上述情况,您的示例可能如下所示:
<PropertyGroup Condition=" '$(Platform)' == 'Web' ">
<DefineConstants>Web</DefineConstants>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'Desktop' ">
<DefineConstants>Desktop</DefineConstants>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
它一定在工作。
希望对你有用。
关于c# - 如何为 Visual Studio 项目添加和编译自定义 'Platform' 开关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/266028/
我创建了一个用户可以添加测试的字段。这一切运行顺利我只希望当用户点击(添加另一个测试)然后上一个(添加另一个测试)删除并且这个显示在新字段中。 所有运行良好的唯一问题是点击(添加另一个字段)之前添加另
String[] option = {"Adlawan", "Angeles", "Arreza", "Benenoso", "Bermas", "Brebant
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我正在努力将 jQuery 滚动功能添加到 nav-tab (Bootstrap 3)。我希望用户能够选择他们想要的选项卡,并在选项卡内容中有一个可以平滑滚动到 anchor 的链接。这是我的代码,可
我正在尝试在用户登录后再添加 2 个 ui 选项卡。首先,我尝试做一个之后。 $('#slideshow').tabs('remove', '4'); $("#slideshow ul li:last
我有一个包含选择元素的表单,我想通过选择添加和删除其中一些元素。这是html代码(这里也有jsfiddle http://jsfiddle.net/txhajy2w/):
正在写这个: view.backgroundColor = UIColor.white.withAlphaComponent(0.9) 等同于: view.backgroundColor = UICo
好的,如果其中有任何信息,我想将这些列添加到一起。所以说我有 账户 1 2 3 . 有 4 个帐户空间,但只有 3 个帐户。我如何创建 java 脚本来添加它。 最佳答案 Live Example H
我想知道是否有一种有效的预制算法来确定一组数字的和/差是否可以等于不同的数字。示例: 5、8、10、2,使用 + 或 - 等于 9。5 - 8 = -3 + 10 = 7 + 2 = 9 如果有一个预
我似乎有一个卡住的 git repo。它卡在所有基本的添加、提交命令上,git push 返回所有内容为最新的。 从其他帖子我已经完成了 git gc 和 git fsck/ 我认为基本的调试步骤是
我的 Oracle SQL 查询如下- Q1- select hca.account_number, hca.attribute3, SUM(rcl.extended_amou
我正在阅读 http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingG
我正在尝试添加一个“加载更多”按钮并限制下面的结果,这样投资组合页面中就不会同时加载 1000 个内容,如下所示:http://typesetdesign.com/portfolio/ 我对 PHP
我遇到这个问题,我添加了 8 个文本框,它工作正常,但是当我添加更多文本框(如 16 个文本框)时,它不会添加最后一个文本框。有人遇到过这个问题吗?提前致谢。 Live Link: JAVASCRIP
add/remove clone first row default not delete 添加/删除克隆第一行默认不删除&并获取正确的SrNo(例如:添加3行并在看到问题后删除SrNo.2)
我编码this ,但删除按钮不起作用。我在控制台中没有任何错误.. var counter = 0; var dataList = document.getElementById('materi
我有一个类似数组的对象: [1:数组[10]、2:数组[2]、3:数组[2]、4:数组[2]、5:数组[3]、6:数组[1]] 我正在尝试删除前两个元素,执行一些操作,然后将它们再次插入到同一位置。
使用的 Delphi 版本:2007 你好, 我有一个 Tecord 数组 TInfo = Record Name : String; Price : Integer; end; var Info
我使用了基本的 gridster 代码,然后我声明了通过按钮添加和删除小部件的函数它工作正常但是当我将调整大小功能添加到上面的代码中时,它都不起作用(我的意思是调整大小,添加和删除小部件) 我的js代
title 323 323 323 title 323 323 323 title 323 323 323 JS $(document).keydown(function(e){
我是一名优秀的程序员,十分优秀!