0

NavigateUrl を使用して、グリッドビュー内のリモート サーバー ディレクトリから PDF ファイルを開く方法はありますか? テキスト ボックスからファイル番号を取得してリンクを生成することはできますが、リンクをクリックしても何も起こりません。NavigateUrl がリモート サーバー上にあり、Web ブラウザーで開こうとしているために、NavigateUrl の形式が間違っている可能性はありますか? 以下の私のコード。前もって感謝します。

            <asp:TemplateField>
                <ItemTemplate>
                    <asp:HyperLink ID="HyperLink1" runat="server" 
                        NavigateUrl='<%# Eval("Name", "file:\\fileserver\pdf\{0}") %>' 
                        Target="_blank" Text='<%# Eval("Name", "{0:d}") %>'></asp:HyperLink>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="Name" DataFormatString="{0:d}" HeaderText="FILE NUMBER" />
            <asp:BoundField DataField="CreationTime" DataFormatString="{0:d}" HeaderText="DATE ADDED" />
            <asp:BoundField DataField="Length" DataFormatString="{0:#,### bytes}" HeaderText="FILE SIZE" />
4

2 に答える 2

1

ナビゲート URL は、物理ファイル パスではなく、URL のように見える必要があります。のようなものhttp://server/path/x.pdf。ドキュメントが保存されている共有を所有している場合は、リモート サーバーとディレクトリを指す仮想ディレクトリを追加することを検討してください。その後、使用してasp.netアプリケーションからファイルにアクセスできますhttp://yourserver/virtualpath/x.pdf

于 2013-01-18T16:39:12.177 に答える
0

リンクが正しく機能するためには、file:// ではなく http:// 経由でファイルにアクセスできる必要があります。

設定したら、Server.MapPath() メソッドを使用して、ファイルへのパスに基づいて URL を生成します。

于 2013-01-18T16:30:48.380 に答える