Ссылка на проект. Net Core 3.1 из. Net Стандартной библиотеки классов - PullRequest
0 голосов
/ 09 января 2020

Итак, у меня есть .NET Core 3.1 проект. Я пытаюсь создать проект модульного тестирования для go вместе с ним. Я создал .NET Standard 2.1 Class Library для этой цели. Затем я пытаюсь добавить ссылку на основной проект, чтобы иметь возможность ссылаться на код оттуда. Это не работает, так как я получаю следующие ошибки компиляции:

'.. \ MyProj \ MyProj.csproj' target 'netcoreapp3.1'. На него не может ссылаться проект, нацеленный на .NETStandard, Version = v2.1. Проект MyProj не совместим с netstandard2.1 (.NETStandard, версия = v2.1). Project MyProj поддерживает: netcoreapp3.1 (.NETCoreApp, Version = v3.1) Test (test \ Test)

Так что для меня это имеет смысл, так как я понимаю, почему .NET Core не будет быть в состоянии ссылаться на проект .NET Standard.
Но тогда как я могу создать проект модульного тестирования? Можно ли создать .NET Core 3.1 Class Library? Из всего, что я прочитал, кажется, что этого не существует.

Как настроить проект модульного тестирования, который ссылается на основной проект?

Ответы [ 2 ]

2 голосов
/ 09 января 2020

. NET Стандарт был создан как интерфейс для различных. NET реализаций. Например, это позволяет вам обмениваться кодом между. NET Core и полной. NET платформой. Я бы создал вашу библиотеку в виде проекта *. 1008 * Standard 2.1, а затем вы можете сослаться на него в вашем приложении. NET Core 3.1 и вашем проекте модульного тестирования.

Я только предлагаю. NET Стандарт как как правило, он более переносим, ​​чем. NET Framework или. NET Core библиотеки. Вы сможете настроить таргетинг на большее количество платформ, таких как Xamarin, настольные компьютеры или веб-сайты. NET Стандарт.

0 голосов
/ 09 января 2020

Я думаю, вам просто нужно использовать. Net Core 3.1 в вашем проекте, а не NetStandard. Я использую это таким образом, и нет никаких проблем. Я полагаю, вам не нужно, чтобы ваше модульное тестирование было переносимым?

...