Вопрос

Можно ли разделить информацию в .csproj на несколько файлов?Немного похоже на проектную версию partial class особенность.

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

Решение

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

проект1.csproj

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

проект2.csproj

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

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

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

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


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

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

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

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

Полезная ссылка из MSDN:

Как сделать:Используйте один и тот же целевой объект в нескольких файлах проекта

Обратите внимание, что внешние файлы имеют .цели расширение с помощью конвенций.

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

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