Перекрестный проект MVC4 Webforms

#asp.net #asp.net-mvc-4 #merge

#asp.net #asp.net-mvc-4 #слияние

Вопрос:

У меня есть 2 проекта (MVC4 amp; ASP.NET 3.5). Теперь я намерен отобразить (etc. : page1.aspx) в моем index.cshtml. Возможно ли это сделать?

Этот код не должен работать, потому что он из другого проекта.

    @Html.Partial("~/page1.aspx")
  

Ответ №1:

попробуйте это

 public class myTestController: Controller
{
    public ActionResult Index()
    {
        return View(); //Razor file in  Views/folder1/Index.cshtml
    }

    public ActionResult RenderAspx()
    {
        return View("page1"); //Aspx file Views/folder1/page1.aspx
    }
}
  

затем на вашей странице

 @{@Html.RenderAction( "RenderAspx","myTestController");}
  

Комментарии:

1. хммм …. page1.aspx НЕ находится в одном проекте с Index.cshtml. Это означает, что их физический путь не совпадает.

2. Я этого не читал! Если он внешний, попробуйте получить его с помощью вызова jquery ajax. Не так ли?

3. но если это сделать, браузеру нужно будет отправить обратно на сервер, чтобы получить страницу.

4. да, но вам нужен внешний ресурс.. Я не понимаю, как вы можете получить его без нового запроса (get, post …)

5. вот почему я задавался вопросом, можно это сделать или нет: D …. или, может быть, скомпилировал aspx для . dll и импорт в проект MVC (только мое предположение). Или же мне нужно объединить 2 проекта в 1, чтобы совместно использовать _layout.cshtml