У меня есть решение WPF, содержащее компонент подпроекта с кодом WPF и Silverlight. Если определен символ условной компиляции "WPF", то создается код WPF, а если он не определен, то создается код Silverlight. Это работает для моей сборки Debug просто отлично. Однако, когда я пытаюсь сделать сборку Release, сборка не обнаруживает символ "WPF", и, поскольку она неправильно компилирует код silverlight, я получаю сборку, которая не будет работать. Есть идеи, почему символ WPF не определяется сборкой?
Вот соответствующий раздел .csproj. Обратите внимание, что символ «WPF» определен в DefineConstants как для Debug, так и для Release, но он не обнаруживается в сборках выпуска. Кто-нибудь может помочь?
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG;WPF</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn>1607</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE;WPF</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>