2009-03-20 3 views
0

Я борюсь с назначением менеджера конфигурации сборки в Visual Studio 2008. В частности, мне интересно узнать, что он делает при разработке консольного приложения, а также веб-приложения (проект веб-приложения). Не влияет ли настройка режима Debug или Release при разработке и запуске приложения в контексте VS2008? Как это сделать, когда вы хотите построить решение?Какова цель диспетчера конфигурации сборки в VS2008?

ответ

2

Менеджер конфигурации сборки позволяет вам устанавливать различные комбинации вариантов построения проекта для решения. Например, скажем, у вас есть решение с 4 проектами, log4net, DAL, бизнес-слоем и веб-сайтом. В большинстве случаев вы захотите запустить веб-сайт и бизнес-уровень в отладочном режиме, но DAL и log4net в режиме выпуска. Иногда вы также захотите запустить DAL в отладке, но только в редком случае вы захотите запустить все в отладке. Диспетчер конфигурации позволяет вам определять такие конфигурации.

Кроме того, вы можете определить сборку x64, в которой некоторые проекты будут нацелены на x64, а другие - на AnyCPU, в зависимости от потребностей. Или даже цель построения, которая исключала конкретные проекты и включала других в зависимости от потребности.

Итак, менеджер конфигураций позволяет вам контролировать отношения между процессами сборки на уровне, превышающем упрощенную версию отладки или всех.

Я также предполагаю, что в 99% случаев вам не понадобится возиться с менеджером конфигурации. :-)

0

Я нашел этот инструмент невероятно полезным в следующих ситуациях:

1- У вас есть много проектов в растворе, и вы хотите построить только проект, который вы сейчас работаете (которая занимает 10s вместо 2mn)

2- Вы должны производить на регулярной основе различного типа сборок (Debug против выпуска, x64 против x86 и т.д.)

чтобы ответить на вопрос о различиях между отлаживать и режим выпуска, это определенно имеет значение. Как правило, VS будет компилировать ваш код «как есть» при создании в режиме отладки, в то время как он будет оптимизировать (то есть встраивание и т. Д.) В режиме деблокирования.

Например, если вы строите этот код:

public bool Foo(){ 
    return true; // put a breakpoint here, and move the execution position to the next line 
    console.WriteLine("Foo"); 
    return true; 
    } 

В режиме отладки, вы будете в состоянии сделать это, а не в режиме выпуска (поскольку компилятор обнаружил код был недоступен, и hasn»

+0

На самом деле ваша точка останова никогда не попадет в режим отладки, потому что программа никогда не доберется. – demoncodemonkey

+0

whooops; я отредактировал сообщение, чтобы лучше объяснить, что я имел в виду – Brann

Смежные вопросы