2010-07-28 108 views

回答

2

在ASP.NET MVC應用程序是:

public ActionResult Foo() 
{ 
    return PartialView(); 
} 

,然後發送AJAX請求:

$('#someDiv').load('/home/foo'); 

將加載一個div內的Foo.ascx局部視圖。

在傳統的ASP.NET WebForms應用程序中,您需要設置一個通用處理程序,將用戶控件的內容呈現到響應中。下面是可以使用的通用處理器的一個例子:

public class Handler1 : IHttpHandler 
{ 
    public void ProcessRequest(HttpContext context) 
    { 
     using (var writer = new StringWriter()) 
     { 
      Page pageHolder = new Page(); 
      var control = (UserControl)pageHolder.LoadControl("~/foo.ascx"); 
      pageHolder.Controls.Add(control); 
      context.Server.Execute(pageHolder, writer, false); 
      context.Response.ContentType = "text/html"; 
      context.Response.Write(writer.GetStringBuilder().ToString()); 
     } 
    } 

    public bool IsReusable 
    { 
     get { return false; } 
    } 
} 
+0

在經典的asp.net m wrking意味着不可能沒有設置處理程序? – vakas 2010-07-28 05:30:53

+0

設置一個處理程序或僅包含此控件的aspx頁面。 – 2010-07-28 05:36:46

1

你可以包含什麼,但用戶控件一個簡單的ASPX頁面。

+0

我會說這是首選的方法。 – NotMe 2010-07-28 05:37:35

相關問題