我将Visual Studio 2019与基于SDK的项目一起使用,并具有多个目标:
<TargetFrameworks>netstandard2.0;net45;net46</TargetFrameworks>
但是当我编写条件代码时,我(显然)看到一些灰色代码和一些常规颜色代码:
问题:
哪些设置决定哪个部分将显示为灰色而哪个部分将不显示?
因为现在,如果我要编辑“ NETFULL
”部分(因为我是多目标的),则全部为灰色,并且没有智能提示。
如何告诉VS:现在让我们切换到NETFULL
模式?
NB 当然可以删除条件,但是我想知道为什么它是灰色的,以及如何在它们之间切换(因为我是多目标)
答案 0 :(得分:1)
在.csproj文件中声明您的条件编译符号:
<PropertyGroup Condition="'$(TargetFramework)' == 'net45' OR '$(TargetFramework)' == 'net46'">
<DefineConstants>NETFULL</DefineConstants>
</PropertyGroup>
使用代码窗格左上方的下拉菜单在要定位的框架之间切换:
答案 1 :(得分:0)
答案 2 :(得分:-1)
重新定义TargetFrameworks。使用相同的语法,只需放入其他目标。