0

我正在爲MVC5編寫一個html助手擴展。 我需要訪問ViewContext的流來編輯它。 (像的TextReader)訪問ViewContext的作者流

htmlHelper.ViewContext.Writer.Write("<div>"); 

是否有任何的方式來訪問流;這樣我可以在示例中的最後一個「div」標籤上面操作或添加一些html代碼?

我無法找到關於在哪裏可以找到textwriter寫入的流的任何線索?

回答

0

這取決於你使用的是什麼視圖引擎,但是如果你編寫一個html助手,它會容易得多。見Creating Custom HTML Helpers

簡單的HTML助手可以這樣寫:

@helper CustomDiv(var param1, var param2){ 
    Write("something to html encode & stuff"); 
    WriteLiteral("<div>something that is html</div>"); 
} 

在剃刀,你也可以叫@Write(),它將編碼字符串HTML。如果您需要TextWriter,請參考Context.Response.Output,但這不會允許您像HtmlHelper一樣操作HTML內聯HTML - 它更多用於覆蓋常規處理程序。

或只是Output財產WebPageBase這也是一個TextWriter