Я не понимаю концепцию проектов и решений Visual Studio.

StackOverflow https://stackoverflow.com/questions/57409

  •  09-06-2019
  •  | 
  •  

Вопрос

В Eclipse у меня есть рабочее пространство, содержащее все мои проекты.Каждый проект собирается и компилируется отдельно.Проект не взаимодействует с другим проектом.

Как это связано с Visual Studio и проектами/решениями там?

Это было полезно?

Решение

Проект VS — это отдельная сущность.Он будет собирать и компилировать сам.Решение — это просто способ объединить несколько проектов.Проекты не обязательно нуждаются в компиляции других проектов (хотя они могут зависеть от других проектов).

Это просто позволяет вам концептуально группировать проекты в один большой проект.Например, у вас может быть отдельный проект тестирования.Это зависит от кода реального проекта и должно храниться вместе с реальным проектом, но не обязательно находиться в одном exe/dll.

Другие советы

Каждый проект VS создает один EXE-файл или DLL.Решение — это просто набор связанных проектов.

Итак, проект VS: Проект Eclipse:: Решение VS: Рабочая область Eclipse.

Другой взгляд на это заключается в том, что решение — это контейнер для проектов.В большинстве случаев я создаю каждый уровень как проект внутри решения, поэтому мое дерево выглядит так:

  • Мое веб-приложение или Win-приложение
    • Уровень представления
      • файлы...
    • Бизнес-уровень
      • файлы...
    • Доступ к данным
      • файлы

Ваш пробег может отличаться

@Томас Оуэнс:

Да, некоторые (большинство?) людей, использующих Eclipse, имеют более одного рабочего пространства.Это удивило меня больше всего, когда я впервые начал использовать Eclipse, поэтому я отвечаю здесь, чтобы сделать этот комментарий более заметным.

Вас может сбить с толку следующее:

В VS2003 все имело файл проекта и файл решения.Если бы у вас было Решение с одним Проектом, вы могли бы открыть Решение и увидеть один Проект.Если вы откроете проект, он попытается создать новый файл решения, содержащий проект.Но у всех веб-проектов и проектов Winform были проекты и решения.

В VS2005 это немного изменилось — теперь по умолчанию веб-проекты больше не имеют файлов Project.Они получили отзывы от некоторых веб-разработчиков, которым не нравились файлы Project: они считали, что если файл находится в каталоге, то он является частью приложения.После выпуска VS2005 они получили больше отзывов от разработчиков, которым понравилась идея файла проекта, поэтому они вернули ее обратно.Это «Веб-сайт» и «Веб-приложение» в VS2005 (и я не могу вспомнить, что есть что сейчас).

Кроме того, в VS2005, если у вас открыто решение только с одним проектом, вы не увидите в обозревателе решений вообще существования решения, вы увидите только проект (как если бы его не было в решении). ).Только после добавления второго проекта вы увидите, что существует решение, содержащее их оба.

Итак, в целом вы были на правильном пути: решения и проекты работают в Visual Studio так же, как и в Eclipse, просто есть некоторые особенности, которые сбивают с толку.

Решение имеет 0 или несколько проектов...

В Visual Studio 2008 слишком много типов веб-проектов.Существуют проекты веб-сайтов и проекты веб-сайтов.Проекты веб-приложений, и они ограничивают вас по-разному.Это хороший пример того, как Microsoft предлагает слишком много вариантов вместо того, чтобы сосредоточиться на одном надежном решении.Даже в рамках проекта веб-сайта существует как минимум 3 различных способа компиляции вашего приложения.

Я обнаружил, что не всегда видеть решение в обозревателе решений раздражает.В меню «Параметры» -> «Проекты и решения» -> «Общие» есть настройка «Всегда показывать решение», которая оказалась удобной.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top