Включить бритвенные представления в общий проект - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть CSS, Javascript, классы и частичные представления для сетки с множеством вариантов сортировки и фильтрации.Я хотел бы включить все это в общий проект в Visual Studio, чтобы я мог повторно использовать его в разных приложениях.

CSS, Javascript и классы для сетки работают правильно в общем проекте.Частичных просмотров нет.Я получаю много ошибок в частичных представлениях, и я не уверен, как ссылаться на частичные представления из представлений в моем веб-приложении.

Возможно ли включить представления в общий проект?Как мне это сделать, если это возможно?Спасибо!

1 Ответ

0 голосов
/ 12 сентября 2018

RCLs

Один из способов сделать это, вполне подходящий для вас, - это использовать Razor Class Library (RCL). RCL являются довольно новыми для ASP.NET и предоставляют метод простого обмена и повторного использования видов бритвы.

Пожалуйста, обратитесь к документации ниже:

https://docs.microsoft.com/en-us/aspnet/core/razor-pages/ui-class?view=aspnetcore-2.1&tabs=visual-studio

С помощью RCL вы можете переопределить общие представления в своем веб-проекте, если хотите.

Приложения могут включать RCL и отменять представления и страницы содержит. Когда вид, частичный вид или страница бритвы найдены в обоих веб-приложение и RCL, разметка Razor (файл .cshtml) в Интернете приложение имеет приоритет.

Общий исходный код

Вы также можете поделиться исходным кодом бритвы, используя свой контроль версий, чтобы гарантировать, что каждый проект имеет одинаковые представления. Лично я бы не рекомендовал этот, но это вариант.

Предварительно скомпилированные представления

Другой вариант, поскольку вы не используете .NET Core, - это предварительная компиляция ваших представлений. Вы можете использовать следующую статью для инструкций:

https://www.codeproject.com/Articles/1169354/Pre-compiled-Razor-View-in-ASP-NET-MVC

После получения DLL, содержащей ваши скомпилированные представления, вы можете легко включить ее в качестве ссылки в другие проекты.

Другие опции

Ознакомьтесь с ответами на этот вопрос для получения дополнительных опций:

Совместное использование Razor в проектах

...