SORU
3 Aralık 2010, Cuma


'HTML denetleyicisi eylem içinde Jilet Kısmi bir Görünümünü oluşturmak için Nasıl ASP.NET MVC Razor:

Nasıl ASP.NET view engine verilen kısmi bir görünüm is known bir HTML oluşturmak için.

Ancak bu işlev çalışmaz kısmi görünümü jilet kullanılır, istisna kısmi görünüm elde etmez dediği gibi "Eğer". UserControl

Nasıl jilet kısmi görünümü desteklemek için render düzeltmek için?

E-postalar bu kısmi manzaralı formu oluşturmak için buna ihtiyacım var ...

GÜNCELLEME:

Kod başarısız (@MCI):

public string RenderPartialToString(string controlName, object viewData)
    {
        ViewPage viewPage = new ViewPage() { ViewContext = new ViewContext() };
        viewPage.Url = this.GetUrlHelper();

        string fullControlName = "~/Views/Email/"   controlName   ".ascx";

        viewPage.ViewData = new ViewDataDictionary(viewData);
        viewPage.Controls.Add(viewPage.LoadControl(fullControlName));

        StringBuilder sb = new StringBuilder();
        using (StringWriter sw = new StringWriter(sb))
        {
            using (HtmlTextWriter tw = new HtmlTextWriter(sw))
            {
                viewPage.RenderControl(tw);
            }
        }
        return sb.ToString();
    }

CEVAP
3 Aralık 2010, Cuma


@Html.Partial("nameOfPartial", Model)

Güncelleme

protected string RenderPartialViewToString(string viewName, object model)
{
    if (string.IsNullOrEmpty(viewName))
        viewName = ControllerContext.RouteData.GetRequiredString("action");

    ViewData.Model = model;

    using (StringWriter sw = new StringWriter()) {
        ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName);
        ViewContext viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
        viewResult.View.Render(viewContext, sw);

        return sw.GetStringBuilder().ToString();
    }
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Adams

    Bryan Adams

    30 Mart 2006
  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • TomKNJ

    TomKNJ

    26 ŞUBAT 2007