2011-04-19 113 views
2

ASP.NET 4.0ASP.NET禁用“C: fakepath”在FileUpload控件

我已经签,使用两个或控制(这是HTML文件输入的包)将在谷歌浏览器显示"C:\fakepath\MyFile" 12.0和IE8.0在我的Windows 7上。它只在FF3.6中显示"MyFile"。我试图不显示“C:\ fakepath \”字符串,因为它对大多数用户来说并不常见。

我已经启用在另一个SO线程中提到的IE安全设置中显示完整路径,所以不应该只是IE安全问题。更不用说GC也显示假道了。

我更怀疑它是因为我的编译环境 - 安装了Windows 7 + VS2010 SP1 + MVC3。社区能告诉我如何禁用它吗?

回答

3

它不能被禁用,它是一个浏览器安全功能。它确保服务器无法访问客户端上的任何文件信息。一些浏览器以不同的方式处理它,这就是为什么在FF中你只能看到文件名。

请参阅此相关的问题:

Javascript loading clients local media

+0

HTML文件输入在我的项目有这个fakepath行为。但是,如果它不在新创建的ASP.NET 4.0项目中。为什么不同?请指教。 – Stan 2011-04-19 22:20:45

+1

@Stan您使用的服务器端技术并不重要,这是客户端问题,不幸的是,您无法对此做任何事情,因为它现在是浏览器的常规安全功能。 – 2011-04-19 23:26:19

+0

但我在同一台PC上编译了两个项目,并使用相同的浏览器进行测试。一个人如何拥有安全功能,而另一个则不是? – Stan 2011-04-20 07:18:00