aspx表单上的共享文件夹路径

时间:2013-01-18 06:46:18

标签: c# hyperlink directory shared

我在共享位置/文件夹中有一些文件。我需要在网页上提供链接/路径。如果用户单击该链接,则用户应该能够查看该文件。 我正在使用带有C#(VS2010)的asp.net

上述要求是否可行? 如果是,请帮助我启用此功能。

提前谢谢

2 个答案:

答案 0 :(得分:0)

应该可以使用像file://server/share/path/to/file.txt这样的东西。 Firefox对文件名中的字符编码比IE更容忍,因此您可能需要在文件路径上使用Server.UrlEncode

答案 1 :(得分:0)

我要做的是写一个ASHX Generic Handler,您将请求的文件名作为URL参数传递,ASHX处理程序实际上为您提取文件,并将其发送到浏览器。

我认为这有以下好处:

  • 它使用HTTP协议,而不是FILE协议。
  • 您将内部结构保持在内部,而不会将其暴露给访问者。
  • 您可以实现访问权限和其他内容,因为文件是通过处理程序流式传输的,并且不是由Web服务器(IIS)直接提供的。

如果NTFS安全权限存在问题,您可以使用模拟从共享文件夹位置获取文件。几年前我写了small impersonator课,以简化这项任务。