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

  • Charles Nesson

    Charles Ness

    27 NİSAN 2006
  • DavidParody

    DavidParody

    17 EKİM 2009
  • RayperEnglishKnight

    RayperEnglis

    24 Kasım 2008