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

  • Bigapplemagic

    Bigapplemagi

    22 EYLÜL 2011
  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • DanceOn

    DanceOn

    6 Mayıs 2006