在GridView中显示文件名
本文关键字:显示文件 文件名 显示 GridView | 更新日期: 2023-09-27 17:50:48
我得到这个~/Data/TestCopy.pdf为我的文档在GridView,但我试图得到只有文件名没有从SQL数据库的目录。有人知道如何做到这一点吗?
谢谢!
<asp:TemplateField HeaderText="Documents " SortExpression="filePath">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("filePath") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" Target="_blank" runat="server" Text='<%# Bind("filePath") %>'
NavigateUrl='<%# Eval("filePath") %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
最简单的方法是,添加对系统的引用。IO和使用Path类只获取文件名,在你的代码中做一点改动,
<asp:TemplateField HeaderText="Documents " SortExpression="filePath">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Path.GetFileName(Bind("filePath")) %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" Target="_blank" runat="server" Text='<%# Path.GetFileName(Bind("filePath")) %>'
NavigateUrl='<%# Eval("filePath") %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
在Gridview RowDataBound中,从filepath求值filename
System.IO.Path.GetFileName(filePath).
不确定,但你可以尝试这样做:-
Text='<%# Eval("filePath").ToString().Split(Eval("filePath").ToString().LastIndexOf("/"))[1] %>'
可能您已经这样存储了~/Data/TestCopy.pdf在数据库中。你可以使用split函数来分割最后一个'/'