在GridView asp.net中显示文件名

时间:2014-03-18 09:23:23

标签: c# asp.net gridview

我在GridView中获取了〜/ Data / TestCopy.pdf我的文档,但我试图只获取没有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>

4 个答案:

答案 0 :(得分:2)


最简单的方法是,只需添加对System.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>

答案 1 :(得分:0)

在Gridview RowDataBound中,从文件路径评估文件名。

System.IO.Path.GetFileName(filePath).

答案 2 :(得分:0)

不确定,但您可以尝试这样的事情: -

Text='<%# Eval("filePath").ToString().Split(Eval("filePath").ToString().LastIndexOf("/"))[1] %>'

答案 3 :(得分:0)

可能是你用这种方式存储了〜/ Data / TestCopy.pdf在数据库中。您可以使用拆分功能拆分最后一个'/'