2012-09-06 30 views
0

我想要做的是在讀取一個新文件後更新「新文件」的數量。首先,我有一個新文件數量的文本(新文件,我的意思是我沒有下載或點擊下載的文件)。如何在ASP.NET MVC3中下載文件的請求之後執行ajax調用

<a id="Plans">Plans (@Model.NewPlansQuantity)</a> 

無論何時單擊「下載鏈接」,我必須下載文件並更新我認爲是新文件的數量。這是下載鏈接:

foreach (var item in @Model.MediaItems) 
     { 
     <tr> 
      <td> 
       @Html.ActionLink(@item.Name, "DownloadFile", "Controller", 
           new 
            { 
             FileName = item.FileName, 
             Type = item.Type, 
             FileID = item.MediaItemID 
            }, new { @class = "DownloadLink" }) 
      </td> 

此鏈接調用以下動作:

public FilePathResult DownloadFile(string FileName, int Type, int FileID) 
    { 
     var file= FileRepository.GetFiles(FileID); 
     var fileroute = FilesRepository.FileRoute.FirstOrDefault(x => x.Type == Type); 

     if (file != null) 
     { 
      file.Read = true; 
      FileRepository.SaveFile(file); 
     } 

     var route = Server.MapPath(Url.Content(fileroute.Route)); 

     var path = Path.Combine(route, FileName); 

     FileInfo info = new FileInfo(path); 

     if (info.Exists) 
     { 
      return File(path, "application/octet-stream", FileName); 
     } 
     else 
     { 
      throw new HttpException(404, "Not found"); 
     } 
    } 

我的操作方法在做什麼是更新文件實體爲閱讀和下載。做完這些之後,我必須更新新文件數量的文本,這是上面第一行代碼(通過執行ajax調用,我認爲)。我試圖做的Ajax調用在以下事件:

$('.DownloadLink').live("click", function() { 

     //Tried to do the ajax call here 
    }); 

我試圖做的下載鏈接點擊事件的Ajax調用,但沒有工作。似乎ajax調用正在停止,也許是因爲我正在請求同時下載文件。有誰知道有什麼辦法做到這一點?

+1

我真的不明白你要做什麼。 –

+0

我已經更新了這個問題,現在讓我知道它是否更清晰。 –

回答

相關問題