我的程序:使用.NET MVC3創建,然後下載文件
- 從我的網站上收集信息。 (jquery)
- 將數據發送到服務器。 (Ajax文章)
- 服務器將數據組裝到文檔中。 (請參閱下面的.NET代碼)
- 自動下載文檔。 (文件對話框是確定或一些其他)(參見下面的.NET代碼)
Jquery的能夠容易地進行步驟1。然而,如果我在步驟1中使用jQuery然後我感到鎖定到一個Ajax交對於步驟2。意義(據我所知)步驟3和步驟4需要是不同的控制器操作。在這種情況下,在步驟3中彙編的文檔需要以某種方式轉移到步驟4.我打算文檔是臨時的,所以我不贊成將數據保存到數據庫。此外,會話存儲在我的模型等複雜數據類型中很流行。
我放在一起看起來執行1,2和3的代碼,但是,似乎沒有辦法輕鬆地在3和4之間傳輸數據。該文件是臨時的,所以我並不真的想要將其存儲在數據庫中。我更喜歡某種類型的臨時服務器端存儲。
所以我的問題: 1.除了ajax post之外,還有其他一些選項可以讓大量的文本數據(比我想要的更多)到達服務器嗎? 2.如果需要兩個控制器方法(一個用於組裝文檔,另一個用於下載)如何暫時「保存」服務器上的數據?我不想在我的複雜對象使用一個數據庫和會話梁木..
謝謝, 馬特
DotNetCode組裝文件:
[HttpPost]
public ActionResult FinalText(UserModel model)
{
byte[] result = buildDocumentFromModel(model);
return "success";
}
DotnetCode回報文件:
[HttpGet]
public FileResult FinalText(int documentId)
{
byte[] result = getDocument(i);
return File(result, "application/pdf", Server.UrlEncode("test.pdf"));
}