SORU
14 Ocak 2011, Cuma


MVC3 Razor, nasıl bir eylem içinde işlenen bir görünüm html alabilirim?

Herkes bir eylem içinde bir görüş oluşturulmuş html almak için nasıl biliyor mu?

Böyle bir şey oldu

public ActionResult Do()
{
    var html = RenderView("hello", model);
...
}

CEVAP
14 Ocak 2011, Cuma


Bir dize için onları işlemek için bir ihtiyaç vardı bu yüzden Utilities.Common görüş istemciye geri geçirmek JSON nesneleri sürekli özellikler olarak aradım bir sınıf statik bir yöntem kullanıyorum. İşte:

public static string RenderPartialViewToString(Controller controller, string viewName, object model)
{
    controller.ViewData.Model = model;
    using (StringWriter sw = new StringWriter())
    {
        ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(controller.ControllerContext, viewName);
        ViewContext viewContext = new ViewContext(controller.ControllerContext, viewResult.View, controller.ViewData, controller.TempData, sw);
        viewResult.View.Render(viewContext, sw);

        return sw.ToString();
    }
}

Bu tam manzaralı kısmi görünümleri için iş, sadece ViewEngines.Engines.FindView ViewEngines.Engines.FindPartialView değişecek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • eyes4beautee

    eyes4beautee

    17 HAZİRAN 2011
  • Fraser Raft

    Fraser Raft

    9 Mart 2010
  • NCIX Tech Tips

    NCIX Tech Ti

    2 Ocak 2007