Конфигурация пользовательских решений не отображается в Visual Studio 2010

Я добавил конфигурацию решения под названием "Staging". Он отображается в раскрывающемся списке VS, но не в Диспетчере конфигурации на экране "Пакет/Публикация Интернета". На этом экране те, которые я вижу в раскрывающемся списке, следующие:

  • Активный (Release)
  • Debug
  • Release
  • Все конфигурации

Я не вижу здесь постановку для упаковки в режиме постановки

Ответ 1

Я нашел решение проблемы добавления нового проекта ПОСЛЕ создания пользовательской конфигурации сборки -

  • Щелкните правой кнопкой мыши на решении.
  • Выберите "Свойства" в контекстном меню.
  • В появившемся диалоговом окне нажмите "Свойства конфигурации" в левой панели.
  • Нажмите кнопку "Configuration Manager..." в правом верхнем углу.
  • Прокрутите вниз до вашего нового проекта.
  • В столбце "Конфигурация" для вашего проекта выберите <New...>.
  • В появившемся диалоговом окне введите имя существующего проекта и снимите флажок "Создать новые конфигурации решений" (поскольку он уже существует на уровне решения).
  • Перейдите в свойства этого проекта, и вы увидите эту конфигурацию. Примените необходимые свойства для этой конфигурации в вашем проекте.

Ответ 2

Обходной путь: откройте другой файл проекта, который уже находится в конфигурации, нашел необходимый node и скопировал их в целевой файл проекта (конечно, с исправлениями файла пути/сборки).

Ответ 3

Самый чистый способ сделать это, который я нашел, - это изменить файл proect (.csproj) непосредственно в текстовом редакторе.

Если у вас есть проект, который уже имеет желаемую конфигурацию, откройте его и найдите соответствующий элемент PropertyGroup (например, тот, который указан для конфигурации "Демо" ниже).

Скопируйте этот элемент PropertyGroup и вставьте его после эквивалентного элемента для конфигурации Debug.

Если по какой-то причине у вас еще нет нужной конфигурации, вы должны просто скопировать Debug (или Release, если это более уместно) и изменить имя из "Отладки" на любое ваше имя конфигурации есть.

  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Demo|AnyCPU'">
    <OutputPath>bin\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <PlatformTarget>AnyCPU</PlatformTarget>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
    <Prefer32Bit>false</Prefer32Bit>
  </PropertyGroup>

Ответ 4

Я использую только конфигурацию сборки, чтобы автоматически преобразовывать файлы конфигурации. Я исправил это, удалив конфигурацию сборки из решения, это не удалило мой файл преобразования конфигурации на VS2012, а затем я просто добавил конфигурацию снова. Теперь он появился во всех проектах.

Могут возникнуть проблемы с этим подходом, о которых я просто не знаю, но на данный момент он отлично работает.