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結果,並用它作爲我的電子郵件的正文。
是否有更優雅的方式從另一個動作獲得結果?