很快,我有一个Telerik RadGrid,允许用户在编辑模式下将文件上传到特定的共享服务器文件夹位置。用户希望有一种方法来选择网格上的按钮并打开特定的文件夹来显示该唯一行的所有附件。我能够成功地使用弹出编辑表单上的asp超链接控件来显示文件夹中的所有附件。
我尝试在GridHyperlinkColumn本身上添加一个GridTemplateColumn和一个GridTemplateColumn,并将导航URL设置为我在后面的代码中所做的操作,但是我得到了一个404错误。这与我写文件夹地址的方式有关吗?
选项1
<Telerik:GridTemplateColumn UniqueName="hyperlink">
<ItemTemplate>
<asp:HyperLink ID="hypDirLink" runat="server" Target="_self"
NavigateUrl='<%# String.Format("\\server-name\data$\CADLog\{0}, Eval("CAD_ID")) %>'>
<img src="../Images/Files-icon.png" alt="Open Folder" />
</asp:HyperLink>
</ItemTemplate>
</Telerik:GridTemplateColumn>选项2
<Telerik:GridHyperLinkColumn DataTextField="CAD_ID" UniqueName="hyperLinkColumn"
DataNavigateUrlFields="CAD_ID" ImageUrl="~/Images/Files-icon.png" Target="_self"
DataNavigateUrlFormatString="~//server-name/data$/CADLog/{0}" />选项3
我尝试过几种不同的格式化服务器文件夹位置的方法,例如:
~\\server-name\data$\CADLog\{0}
.\\server-name\data$\CADLog\{0}
~//server-name/data$/CADLog/{0}
.//server-name/data$/CADLog/{0}
\\server-name\data$\CADLog\{0} <-- this is the URL I get when I copy from Windows Explorer
//server-name/data$/CADLog/{0}我已经进行了双、三、四次检查,检查此文件是否存在于服务器上,并且在此共享服务器位置上具有正确的权限设置。每当我单击该链接时,它都尝试在浏览器中打开导航URL,而不是打开Windows Explorer。
我有一张带有Telerik支持的票子来尝试和解决这个问题,但是他们不知道我试图用上面的控件做什么,并且说如果控件建模相同,那么控件应该是工作的。
发布于 2017-03-31 20:19:17
要打开共享服务器上的文件夹位置,只需向GridHyperLinkColumn添加一项内容:
DataNavigateUrlFormatString="File://server-name/data$/CADLog/{0}"这对我来说很好,而且在服务器上也能工作。
https://stackoverflow.com/questions/43145988
复制相似问题