В ASP.NET Core 2.1 и более поздних версиях вы хотите использовать Razor Class Libraries (RCL) , которые были разработаны для этого самого сценария.
RLC позволяет создавать повторно используемый пользовательский интерфейс с видами бритвы,страницы, контроллеры, модели страниц, просмотр компонентов и моделей данных.Дополнительным преимуществом является то, что представления (даже частичные) могут быть переопределены основным приложением, где разметка Razor (файл .cshtml) имеет преимущество, позволяя вносить изменения для каждого приложения без изменения исходного общего компонента.
- Из VisualВ меню Studio Файл выберите Создать> Проект .
- Выбрать Базовое веб-приложение ASP.NET .
- Имя библиотеки(например, «RazorClassLib»)> OK .Чтобы избежать конфликта имен файлов с созданной библиотекой представлений, убедитесь, что имя библиотеки не заканчивается на .Views.
- Убедитесь, что выбран ASP.NET Core 2.1 или более поздней версии.
- Выберите Библиотека классов Razor > OK .
- Ссылка на RCL из основного приложения (вы также можете создать общую библиотеку как пакет NuGet )
- Запустите приложение и посетите
/MyFeature/Page1
Прочитайте полную документацию