работая в проекте Asp.Net MVC3, используя бритвенный движок, я обнаружил ситуацию, которую не знаю, как лучше всего справиться.
В представлении у меня следующая ситуация:
@foreach (var item in Model.Items) {
Html.RenderAction("ActionName", new {param = item});
}
Я думаю, что это очень типичная ситуация.
Теперь предположим, что для рендеринга html-части требуется пара файлов javascript для правильной работы, а также css. А также я хочу, чтобы частичное представление этого действия было доступно и в других представлениях, один или несколько раз.
Вопрос в том, где лучше всего разместить ссылки на внешние js и css? Я бы сказал, что в PartialView ... но я могу избежать того, что вызов RenderAction n раз, не помещает на страницу n раз одно и то же объявление скрипта?
Более того, сказал, что проблема повторения JS и CSS решена, как я должен связать эти внешние ресурсы с видом? Обычно в своих представлениях я помещаю внешние ресурсы в выделенный раздел, который страница макета будет отображать внизу страницы, из соображений производительности. Должен ли я делать то же самое с частичным представлением, предполагая, что представление, которое вызывает его, будет иметь доступ к разделу сценариев ? Но таким образом я связываю дизайн многократного частичного ViewView со структурой представления хостинга: если так, разве я не должен просто объявлять сценарии и CSS в представлении хостинга?
Я довольно новичок в MVC, и я хотел бы знать, какой подход вы используете для решения этой проблемы проектирования.