Я новичок в мире. NET, и в этот момент я запутался в пакетах, ссылках и в том, как ссылаться на них в моем проекте c#.
У меня есть 3 проект в моем решении:
DataAccess
- который содержит логи c для доступа к данным, отображение между DTO и сущностями и т. д. c., DataAccessTest
- содержит модульные тесты для проекта DataAccess
, Service
- включает проект DataAccess
в сервис Windows.
Теперь, DataAccess
ссылки на проект AutoMapper (среди прочего), чтобы помочь с преобразованием данных. Он включен в элемент <PackageReference />
в файле csproj
. Кажется, что работает нормально, когда я делаю dotnet restore
, однако dotnet build
не удается при попытке разрешить пространства имен! То же самое касается JetBrains Rider - он не находит пространства имен, пока я не буду явно ссылаться на них в <Reference>
!
Не уверен, что связан, но то же самое относится и к зависимым проектам. Например, DataAccessTest
ссылается на проект DataAccess
- так что тест будет запущен. Тем не менее, он все еще требует добавления транзитивных зависимостей (например, AutoMapper), поверх ссылки на проект.
Это предполагаемое поведение? Вам нужно оставить и <PackageReference>
, и <Reference>
, чтобы проект правильно компилировался?