我正在使用VS2010上的C#网页。
我有一个从数据库填充的gridview。在加载gridview列时,我会删除文件的本地地址,并为其提供将找到本地文件的服务器名称。所以,如果它的本地路径是E:/ secureDocs / depositions / file a.pdf,任何计算机可以使用的路径是\\ dmzwimkeweb01 \ securedocs \ depostions \ file a.pdf
<Columns >
<asp:BoundField DataField="docTypeName" HeaderText="Type" />
<asp:TemplateField HeaderText="Name" >
<ItemTemplate>
<a href='<%#Utility.Clean(((String)Eval("docPath")).Replace("e:", "\\dmzwimkeweb01")) %>'><%# ((String)Eval("docname")).Replace("|^||^||^||^||^||^||^||^|", "'")%></a>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="pageName" HeaderText="Folder" />
<asp:BoundField DataField="docCreateDate" HeaderText="Date" HtmlEncode="false" DataFormatString="{0:MM/dd/yyyy}" />
</Columns>
然而,当我点击进入专栏的链接时,它会带我去 h_ttp://dmzwimkeweb01/secureDocs/depositions/file%20a.pdf
所以现在斜杠是错误的方式(不知道这是否重要)并且它需要我'http://'它应该只是一个链接到网络上的服务器并且它将%20放在那里是文件名中的空格。此外,当我点击链接时,它会尝试在IE中打开它而不是打开PDF阅读器
所以我想要的链接是:\\ dmzwimkeweb01 \ securedocs \ depostions \ file a.pdf
答案 0 :(得分:2)
假设点击您链接的用户有权访问网络文件位置,请将您的链接显示为:
<a href="file:///dmzwimkeweb01/securedocs/depositions/file a.pdf">My link</a>
斜线确实会采用错误的方式&#34;因为URL的规范与Microsoft的路径规范不同。希望这可以帮助! :)
答案 1 :(得分:0)
你试过“smb:// dmzwimkeweb01 / securedocs / depostions / file a.pdf”