我假设很多人会将这个问题标记为重复,但让我解释一下我现在面临什么样的问题。
我刚刚注意到解决方案中的控制台应用程序具有x86
目标选项,尽管其他所有内容,例如库和相关网站都有AnyCPU
目标。
我已经搜索了其他关于配置管理器并AnyCPU
为我的控制台应用程序添加新配置的问题,但问题就在这里。我无法创建新AnyCPU
配置,因为我收到错误,它已经创建:
这是使用AnyCPU
目标创建新配置的错误:
我只是不明白为什么我不能创建这个配置,它没有在我的项目的下拉选择器中列出。
还有一个目标配置可能会更改的地方,它是项目属性的构建选项卡:
我已经AnyCPU
在平台目标中设置了值,但平台仍然是x86
.
更改平台本身的唯一方法是直接编辑 csproj:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
在这里我们提出我的问题:将目标属性放置在两个不同的属性中的想法是什么?为什么控制台应用程序不能默认选择 AnyCPU?有人认为 Visual Studio 团队是故意这样做的。如果我通过编辑 csproj 文件更改目标平台,可能会出现什么问题?