Ссылка на проект позволяет мне использовать код из других зависимых проектов без явной ссылки на проект - PullRequest
0 голосов
/ 31 декабря 2018

Вот проблема, с которой я сталкиваюсь, я думаю, что это происходит только при использовании .net core и visual studio 2017

У меня есть 3 проекта в моем решении.

  • ProjectA - веб-проект
  • ProjectB - проект Libary класса
  • ProjectC - тестовый проект

ProjectA имеет ссылку на проект ProjectBи ProjectC имеет ссылку на ProjectA

, так как ProjectC не имеет явной ссылки проекта на ProjectB, поэтому я не могу ссылаться на код ProjectB в ProjectC.Если я пытаюсь использовать какой-либо код из ProjectB в ProjectC, я получаю ошибки компиляции.Но это уже не так.Мое решение успешно компилируется без ошибок.Я что-то здесь упускаю?

1 Ответ

0 голосов
/ 01 января 2019

Если вы ссылаетесь на проект, который имеет ссылки на другой проект, эти ссылки будут добавлены автоматически.В вашем случае, когда у вас есть проект A со ссылкой на проект B, при ссылке на проект A в проекте C будет автоматически добавлена ​​ссылка на проект B.

Если вы хотите отключить поведение переходных ссылок, вы можете добавитьPrivateAssets = "Все" по вашей ссылке в ProjectA.csproj (WebProject)

<ItemGroup>
    <ProjectReference Include="..\ClassLibrary1\ClassLibraryProject.csproj" PrivateAssets="All"/>
</ItemGroup>

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...