MVC3 Razor: возможно ли сделать устаревший ASCX? - PullRequest
11 голосов
/ 30 июня 2011

С движком Razor view в MVC3,

Можно ли сделать устаревший ascx?


Я ожидал, что смогу что-то сделатькак:

@Html.RenderPartial("Footer.ascx")

Ответы [ 2 ]

16 голосов
/ 30 июня 2011

Да. Попробуйте вместо этого:

@Html.Partial("Footer")

или

@{ Html.RenderPartial("Footer"); }
0 голосов
/ 14 августа 2012

Просто хотел добавить, что я не видел много людей, публикующих это решение:

Html.RenderAction("Footer", "Home");

Это лучшая практика, если вы используете MVC, потому что вы можете указать любые данные, которые вам нужны вконтроллер вместо того, чтобы пытаться управлять им в свободно плавающем частичном представлении.Очень полезно, если вы используете класс BaseController для инициализации всех ваших вызовов.

public class HomeController : Controller {
    // ...

    [ChildActionOnly]
    public PartialViewResult Footer() {
         // do work
        return PartialView();
    }

    // ...
}
...