2008-10-01 2 views

ответ

21

У вас не может быть более одного мастера csproj. Но поскольку подпрограмма csproj выполняется с помощью msbuild, вы можете просто иметь несколько частичных csproj, которые импортируют друг друга. Файл решения увидит больше , полученный csproj.

project1.csproj

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    .... 
</Project> 

project2.csproj

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Import Project="project1.csproj" /> 
    ... 
</Project> 

project.csproj - это главный проект, который называется файлом решения.

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <Import Project="project2.csproj" /> 
    ... 
</Project> 

Суть в том, что с помощью MSBuild Import функция, которую Вы можете иметь частичные файлы csproj, где каждый из них будет содержать определения, что основной проект (project.csproj в моем примере) будет использовать.


Visual Studio покажет предупреждение безопасности для диалога проекта при открытии измененного решения или проекта файл. Выберите вариант Загрузить проект Обычно и нажмите OK. При повторном открытии решения предупреждение не будет отображаться, потому что конфигурация до Загрузить проект Обычно хранится в файле suo.

-2

Ну, вы можете объединить несколько проектов в одно большое решение, но я не думаю, что это совсем то, что вы имели в виду, поскольку каждый проект должен быть полным проектом в этом случае.

4

Да, вы можете разделить информацию по нескольким файлам. Вы можете использовать Import Element (MSBuild).

Обратите внимание, что Visual Studio предоставит вам annoying security warning, если вы попытаетесь открыть файл проекта, содержащий другие файлы проекта.

Полезные Linky из MSDN:

How to: Use the Same Target in Multiple Project Files

Обратите внимание, что внешние файлы имеют .targets расширения Конвенций.

+0

Вы можете выбрать Загрузить проект Обычно и в следующий раз, когда проект откроется без предупреждения. Это сохраняется в файле suo. – 2008-10-01 11:28:49

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