2012-10-02 64 views
0

可能重複:
In MVC3 Razor, how do I get the html of a rendered view inside an action?我可以打電話從一個ActionResult內的ActionResult與返回的HTML工作

好,這裏是該方案。我有一個操作結果返回一個很好格式化的部分視圖。我想要從另一個操作結果觸發的電子郵件中發送完全相同的HTML結果。我意識到有很多方法可以做到這一點。在Controller或Model中格式化HTML字符串需要花費很長的時間。我還可以從磁盤讀取等文件內容目前我doind這一點,但必須有我的控制器來完成這更好更容易接受的方式:

// MAKE AN HTTP REQUEST FROM CONTROLLER A AND GET THE DETAILS FROM ANOTER CONTROLLER/ACTION 
WebRequest req = WebRequest.Create("UrlToAnotherActionResult"); 
req.PreAuthenticate = true; 
WebResponse resp = req.GetResponse(); 
StreamReader reader = new StreamReader(resp.GetResponseStream()); 
var html = reader.ReadToEnd().Trim(); 

我再取HTML結果,並用它作爲我的電子郵件的正文。

是否有更優雅的方式從另一個動作獲得結果?

回答

相關問題