我動態生成存儲在字符串變量中的HTML。
我想打開一個新窗口,其中包含從此HTML創建的新頁面。
這看起來太簡單了,但我找不到解決方案。
我正在使用ASP.NET 3.5和VS2008。
謝謝,
保羅。ASP.NET動態創建頁面
回答
最好的想法是創建一個HTTP處理程序,在你的web.config文件來處理,你需要有動態內容的各種請求的路徑進行註冊,然後檢測基於HttpContext.Current顯示的內容。 Request的。
這樣,您就沒有保存任何文件,並從您的字符串變量寫入到輸出流
您可以在新頁面試試這個:
保護小組的Page_Load(BYVAL發件人爲對象,BYVALË作爲System.EventArgs)把手Me.Load
HttpContext.Current.Response.Clear() HttpContext.Current.Response.ClearHeaders() HttpContext.Current.Response.ClearContent()
HttpContext.Current.Response.ContentType =「text/html的 HttpContext.Current.Response.Write(YourString) HttpContext.Current.Response.Flush() HttpContext.Current.Response.End()
完Sub
儘管正確。能夠將動態內容推送到獨立位置會更好。 – LorenVS 2009-08-26 12:49:54
創建一個帶有查詢字符串的.ashx頁面,例如pageid = 12345
這個頁面的目的很簡單,就是根據pageid查詢字符串查找一個會話id。例如
var page = Session["PAGE_" + QueryString["pageid"]].ToString();
Response.Write(page);
在,在一個可變生成HTML頁面,在會話的變量存儲在Page_Init
`[ 「PAGE_12345」] = generatedHtml;
然後在Page_Load上生成一個javascript,打開url pagebuilder.ashx?pageid = 12345。
就是這樣。您將能夠在另一個窗口中打開您新生成的html。
- 1. 在asp.net中創建動態HTML頁面
- 2. 用c#頁面動態創建asp.net
- 3. 動態創建ASP.NET內容頁面
- 4. 在asp.net中創建動態頁面mvc
- 5. 動態頁面創建.aspx
- 6. 動態創建靜態頁面的動態頁面
- 7. Asp.Net從動態頁面創建靜態HTML文件
- 8. 創建個別頁面或動態創建頁面?
- 9. ASP.NET動態頁面
- 10. 動態創建ASP.net使用面板
- 11. 動態創建一個asp.net頁面的最佳方法
- 12. 動態創建ASP.net頁面搜索引擎友好
- 13. Drupal,搜索動態創建的頁面
- 14. 動態創建成員頁面
- 15. 在jsp頁面中創建動態行
- 16. Silverlight:如何動態創建頁面
- 17. 創建一個動態頁面
- 18. Changepage到頁面是動態創建
- 19. 導航動態創建頁面
- 20. 從Javascript動態創建HTML頁面
- 21. 創建Html.ActionLink到動態內容頁面
- 22. 創建頁面的動態內容qTip
- 23. 如何動態創建html頁面?
- 24. 創建asp.net頁面MVC
- 25. ASP.NET動態頁面生成
- 26. ASP.NET IIS7動態404頁面
- 27. ASP.NET和動態頁面
- 28. 動態編譯ASP.NET頁面?
- 29. ASP.NET:動態創建控件
- 30. 創建asp.net動態子域
請您詳細說明這個想法...似乎無法通過頭部得到它。 – ThatBloke 2009-08-26 13:42:31
您可以創建一個實現System.Web.Handlers.IHttpHandler(或System.Web.Handlers.IHttpAsyncHandler,如果您想創建異步處理程序)的類。你實現了ProcessRequest(或異步情況下的BeginProcessRequest和EndProcessRequest),HttpContext通過參數傳遞給你。 使用QueryString/Form或其他任何你有的輸入,決定你必須發回哪一段生成的HTML。生成HTML,然後使用回覆於(STR),該溶液基本上使用相同的頁,並且在同一網址,以產生兩個完全不同的內容(主輸出或字符串變量的輸出)寫入它 – LorenVS 2009-08-26 16:18:56