Вопрос по использованию контента с других cshtml страниц в бритве - PullRequest
0 голосов
/ 03 сентября 2011

Я прочитал несколько статей об использовании asp.net mvc3 razor (к которому я довольно новичок). У меня есть пара страниц .cshmtl, которые похожи на общий контент (например, заголовок). В основном это просто HTML-страницы с одним или двумя элементами div и т. Д.

Чтобы встроить это в мою главную страницу, я просто использую @renderPage («адрес страницы»). Мне также нужно позвонить в @renderbody? Нужно ли указывать / a страницу в свойстве макета?

Thanksa

Ответы [ 3 ]

1 голос
/ 03 сентября 2011

Я бы поместил общие элементы в макет (или, возможно, частичный вид, представленный базовым макетом).Фактически, это то, что я сделал в приложении, которое я сейчас создаю, и оно работает довольно хорошо.Единственная проблема заключается в том, нужны ли вам данные модели представления, заполненные контроллером и переданные в это частичное представление.Я так и сделал, поэтому я использовал базовый контроллер и заполнил общие элементы в модели представления (все они также унаследованы от базового класса с общими свойствами) и использовал разделы, а затем в разделах отображал частичное представление или нет, в зависимости отпо необходимости.

0 голосов
/ 25 октября 2012

Как вы можете знать или не знать, ASP.NET принимает теги HTML.

Так почему бы не включить ваш файл .aspx в тег HTML include?

Вот как:

<!-- #include virtual="path to file/include-file.html" -->

Ex:

<!--#include virtual="header.aspx"-->

Я делаю это все время, когда пишу сайт ASP.NET.

Просто поместите его там, где вы хотите, чтобы код, с включенной страницы, отображался.

0 голосов
/ 03 сентября 2011

Вы можете создать частичное представление для каждого из них и вызвать:

@Html.Partial("ViewName")

Или вы можете использовать секции , или эта статья по секциям может помочьтоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...