.net 设置项目的默认生成配置
我在VisualStudio项目文件中有几种可能的配置。如何指定默认情况下选择的选项(当不存在.net 设置项目的默认生成配置,.net,visual-studio-2010,project-files,.net,Visual Studio 2010,Project Files,我在VisualStudio项目文件中有几种可能的配置。如何指定默认情况下选择的选项(当不存在.suo时)?现在,当我在VisualStudio中打开项目时,默认情况下选择了调试配置 Debug all Debug Debugging A release ARelease Release WinterBash 项目文件的相关部分: <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' "&
.suo
时)?现在,当我在VisualStudio中打开项目时,默认情况下选择了调试配置
Debug all
Debug
Debugging
A release
ARelease
Release
WinterBash
项目文件的相关部分:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>...</ProductVersion>
<SchemaVersion>...</SchemaVersion>
<ProjectGuid>{...}</ProjectGuid>
<OutputType>...</OutputType>
<RootNamespace>...</RootNamespace>
<AssemblyName>AAAAA</AssemblyName>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>Full</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>false</Optimize>
<OutputPath>Bin\Release</OutputPath>
<DocumentationFile>AAAAA.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\</OutputPath>
<DocumentationFile>AAAAA.xml</DocumentationFile>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
调试
任意CPU
...
...
{...}
...
...
AAAA
窗户
v4.0
满满的
假的
真的
假的
Bin\Release
AAAAA.xml
真的
满的
真的
真的
垃圾箱\
AAAAA.xml
任意CPU
我希望默认情况下选择此配置:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>Full</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>false</Optimize>
<OutputPath>Bin\Release</OutputPath>
<DocumentationFile>AAAAA.xml</DocumentationFile>
</PropertyGroup>
满满的
假的
真的
假的
Bin\Release
AAAAA.xml
我相信构建配置是按字母顺序列出的。这意味着“调试”配置将是默认项。而“释放”将不会被取消。如果您希望Release成为默认配置,您可以创建一个新的生成配置,并确保它在“Debug”之前显示,方法是使用字母排序,例如将生成配置命名为“ARelease”。
虽然不是一个完美的解决方案,但它可以工作。Visual Studio总是通过解决方案调用构建。每个解决方案配置都有一个(不区分大小写)名称,并将每个项目映射到其配置。可以通过Build>Configuration manager编辑解决方案配置,并在其中或工具栏的下拉列表中选择当前活动的解决方案配置 使用哪种解决方案生成配置? 活动生成配置保存在解决方案用户选项文件(
.suo
)中。这是每个用户的配置,不应在源代码管理中进行检查。此服务器不存在共享配置
如果不存在.suo
文件,VS将选择配置,其名称按字母顺序排列,但有几个例外:
- 所有以“Debug”开头的名称在“A”之前排序
- S1␣S2在S1之前对任意两个字符串S1和S2排序。(␣ 表示一个空格。)
*.suo
文件,默认情况下将选择列表中的下一个配置
Debug all
Debug
Debugging
A release
ARelease
Release
WinterBash
全部调试
调试
调试
释放
阿雷莱斯
释放
温特巴什
请注意,VS显示的顺序不同:
A release
ARelease
Debug
Debug all
Debugging
Release
WinterBash
释放
阿雷莱斯
调试
全部调试
调试
释放
温特巴什
使用哪种解决方案?
如果直接打开项目文件(例如,MyProject.csproj
),Visual Studio将尝试查找解决方案文件
MyProject.sln
)。如果找到了,就使用它*.sln
)中的任何其他解决方案。如果恰好找到一个,则使用它。\*.sln
)。如果恰好找到一个,则使用它MyProject.sln
),并在退出时询问保存该项目的位置。此新解决方案的构建配置与项目的构建配置相对应顺便说一下,项目文件中的第一个
PropertyGroup
指定了当Configuration
和Platform
属性为空(未指定)时,MSBuild将使用的默认值。Visual Studio始终指定这些属性,因此默认值是不相关的。不确定,但请尝试将其更改为Debug
到Release
它不使用字母顺序。如果没有.suo文件,则首选Debug或默认以Debug开头的名称。例如,即使存在名为“ARelease”的配置,也会选择调试配置。您知道S1.S2是否在S1之前对任意两个字符串S1和S2排序?在我看来是这样的。我有Debug.Custom和Debug的配置。当我克隆解决方案并打开VS Debug时,选择了“自定义”。@dyedwiper,我没有时间测试它,但似乎连句点字符都可以像空格一样处理。想知道它们是如何相对排序的,即“Debug Custom”与“Debug.Custom”的顺序是什么。我没有关于答案排序部分的官方来源,我记得我是通过反复试验得出的,创建项目和测试所需的解决方案需要一些时间。