2015-02-21 2 views
1

У меня есть пара больших разделов кода бритвы, которые достаточно похожи, чтобы они исходили из многоразового источника.Как я могу повторно использовать фрагменты файла cshtml 'razor'?

Что я хочу сделать, это создать файл cshtml, который можно вызвать из другого файла cshtml, за исключением того, что я могу отправить ему некоторые входные переменные C#, чтобы помочь сгенерировать эту вещь. Я не знаю, что такое жаргон для такого рода шаблонов в мире MVC.

Я знаю, как сделать HTML-помощники, и я, безусловно, могу сделать HTML-помощником в качестве альтернативы.

+2

HtmlHelper, EditorTemplates, PartialViews или ChildActions (которые возвращают частичный) - все варианты. Это зависит от ваших обстоятельств. –

ответ

4

Вы можете сохранить один файл cshtml, а затем вызвать его из другого cshtml с помощью

@Html.RenderPartial("ReusableView", DataParameters) 

Предполагая, что вы используете MVC. По моему опыту, я только передал это View Models, но документы говорят, что это может быть что угодно. Что касается потянув данные из параметров ...

@model ViewModelName 

, как я всегда делал это ...

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

+0

Я попробую, спасибо, даниэль! Я видел где-то визуальный вызов, но я забыл об этом. Полезное предложение. –

+0

Из Razor для этого нужно называть это между фигурными фигурными скобками, например: '@ Html.RenderPartial (« ReusableView », DataParameters)' –

Смежные вопросы