Как я могу получить доступ к внутренним компонентам в asp.net 5

До asp.net 5 я бы добавил "internalsVisibleTo(some.namespace.name)" в AssemblyInfo.cs - но у меня больше нет AssemblyInfo.cs в моем проекте WebApi.

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

3 ответа

Вы можете добавить свой собственный файл AssemblyInfo.cs. Просто добавьте файл класса, назовите его AssemblyInfo.cs (или любое другое имя) и замените весь его код на следующую строку:

[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("some.assembly.name")]

Вы можете увидеть пример вышеуказанного ответа в действии в проекте MVC asp с открытым исходным кодом, доступном на github:

https://github.com/aspnet/Mvc/blob/e2fd41e416ce1d84e13734ebfb56e64094607d01/src/Microsoft.AspNetCore.Mvc.Abstractions/Properties/AssemblyInfo.cs

Один из лучших способов выяснить это - попасть туда и покопаться.

Удачи.

При создании AssemblyInfo.cs файл - это вариант, я предпочитаю настраивать его в своем файле проекта.

Добавьте это в свой .csproj файл:

      <ItemGroup>
  <AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleTo">
    <_Parameter1>$(AssemblyName).Tests</_Parameter1>
  </AssemblyAttribute>
</ItemGroup>
Другие вопросы по тегам