2009-06-04 55 views
0

在我們的WebForms應用程序,我們可以通過簡單的錨標記提供Flash像這樣:如何在ASP.NET MVC中顯示Flash(SWF)內容

<a href="whatever.swf" class="something" params="with, height, yadda, bang">See It</a> 

現在,我想提議將標籤成使用Html.ActionLink像這樣打電話給控制器/行動:

Html.ActionLink("See It", "DeliverFlash", new {fileName="whatever.swf"}) 

然後在控制我使用的是FileStreamResult推出來....

,在該「工程」閃光燈熄滅,但....

1)它只提示用戶下載我想要的swf,只是顯示它像原來的實現一樣。

2)我還沒有想出如何傳遞類和參數的額外參數。

任何人都可以幫忙嗎?

回答

2

確保在創建FileResult時,不要設置FileDownloadName屬性,或者將添加Content-Disposition標頭以將其指定爲附件。請參閱源代碼:http://www.codeplex.com/aspnet。要設置額外的參數,您只需使用包含html選項的簽名。

<%= Html.ActionLink("See It", "DeliverFlash", 
        new { fileName = "whatever.swf" }, 
        new { 
          @class = "something", 
          @params = "width, height, yadda, bang" 
         }) %> 

請注意class和params前面的@因爲它們是C#關鍵字。

+0

謝謝!你讓我直接生成鏈接。但..內容結果只允許我設置一個字符串作爲內容返回..我實際上想流出swf一旦行動被調用。該操作方法應該是什麼樣子? – 2009-06-04 18:04:36