【发布时间】:2012-01-25 01:01:00
【问题描述】:
我希望能够拥有一个允许常规访问的文件夹,如 \content 文件夹,但它包含 ClickOnce 应用程序。我似乎无法使用 Mvc 实现这一点,但我希望在 Mvc 不将其视为控制器操作的情况下访问此文件夹。
我尝试使用routes.Ignore(theUrl),但这似乎没有效果。
【问题讨论】:
-
是我一个人还是其中一个答案被删除了?
标签: asp.net-mvc
我希望能够拥有一个允许常规访问的文件夹,如 \content 文件夹,但它包含 ClickOnce 应用程序。我似乎无法使用 Mvc 实现这一点,但我希望在 Mvc 不将其视为控制器操作的情况下访问此文件夹。
我尝试使用routes.Ignore(theUrl),但这似乎没有效果。
【问题讨论】:
标签: asp.net-mvc
有两种方法可以做到这一点。第一个是你当前要去的地方,就是通过路由来满足它。您应该能够使用以下内容来忽略预期的路线:
routes.IgnoreRoute("...")
但是,从安全的角度来看,这可能不是正确的方法。我建议您定义一个明确的操作来下载您的单击一次 exe。查看this q/a 作为使用FileContentResult 类的示例。
这样做的原因是您可以控制该文件的安全性,而无需打开对其他目录的访问级别。
编辑:如果这是针对整个目录,您仍然可以采用相同的方法。
【讨论】:
在 IIS 上将文件夹设置为网站中的虚拟文件夹。然后您可以将代码中的 url 设置为指向服务请求的机器和 Web 服务器上的虚拟文件夹。
【讨论】: