0
<asp:GridView runat="server" id="GrdVw_Download">
                        <RowStyle cssclass="ItemStyle" />
                        <HeaderStyle cssclass="tableheader" horizontalalign="Left" />
                        <AlternatingRowStyle cssclass="AlternateItemStyle" horizontalalign="Left" />
                        <FooterStyle backcolor="#5D7B9D" font-bold="True" forecolor="White" />
                        <Columns>
                            <asp:BoundField headertext="File name" headerstyle-horizontalalign="Center" itemstyle-horizontalalign="Center"
                                datafield="FileName" />
                            <asp:BoundField headertext="File Size" headerstyle-horizontalalign="Center" itemstyle-horizontalalign="Center"
                                dataformatstring="{0:#,### bytes}" datafield="Length" />
                            <asp:BoundField headertext="Extension" headerstyle-horizontalalign="Center" itemstyle-horizontalalign="Center"
                                datafield="Extension" />
                            <asp:TemplateField headertext="Download Brochure" itemstyle-horizontalalign="Center"
                                headerstyle-horizontalalign="Center">
                                <ItemTemplate>
                                    <a href="?dl=<%# Encryptor.encrypt(((FileInfo)Container.DataItem).FullName) %>" 
                                    title="Download <%# ((FileInfo)Container.DataItem).FileName %>">
                                        <%# ((FileInfo)Container.DataItem).FileName %>
                                    </a>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>

これが私のグリッドビューマークアップであり、以下はデータバインディング部分です

    DirectoryInfo ProviderFolder = new DirectoryInfo(strFolderPath);
    FileInfo[] BrochureList = ProviderFolder.GetFiles();
    if (BrochureList.Length > 0)
    {
        GrdVw_Download.DataSource = BrochureList;
        GrdVw_Download.DataBind();
    }

この行のグリッドビューで<a href="?dl=<%# Encyptor.encrypt(((FileInfo)Container.DataItem).FullName)、投稿で説明されているエラーが発生します。EncryptorがFilePathを暗号化し、マークアップがファイルをダウンロードするためのリンクを生成する場合 編集申し訳ありません: *解決しました。* FileNameではなく、Nameです。申し訳ありません。

4

1 に答える 1

1

これは、 「System.IO.FileInfo」に「FileName」の定義が含まれていないためです。

あなたは探していますか、FullNameそれともNameおそらくですか?

于 2011-04-11T10:56:05.450 に答える