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

  • ChasesAndCrashes

    ChasesAndCra

    31 Temmuz 2009
  • Jason Rosolowski

    Jason Rosolo

    25 EKİM 2006
  • TheDroidDemos

    TheDroidDemo

    15 ŞUBAT 2011