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

  • Cartoonium

    Cartoonium

    11 NİSAN 2011
  • Chuck Testa

    Chuck Testa

    14 AĞUSTOS 2011
  • Eric Anthony

    Eric Anthony

    13 AĞUSTOS 2011