2009-06-04 88 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