0

.net Web アプリケーションの iframe コントロールに PDF ファイルを表示する必要がありますが、アプリケーションを実行すると、iframe コントロールに PDF ファイルをロードできませんでした。この理由はわかりません...

これは私のコードです...

aspx コード:

<iframe id="frmWord" runat="server" style="height: 500px; width: 500px;"></iframe>

C# コード:

protected void Button1_Click(object sender, EventArgs e)
{
    frmWord.Attributes.Add("src", Server.MapPath(@"~/iplt20.pdf"));
}

私のpdfファイルは、以下のようにプロジェクトフォルダーに物理的に配置されています。

D:\vs-2010projects\rti_chk\rti_chk\iplt20.pdf

私はie、firefox、chromeでも試しました...

Firefox の場合、iframe コントロール内で「プロトコル (d) がどのプログラムにも関連付けられていないため、アドレスが認識されませんでした。Firefox はこのアドレスを開く方法を知りません。」と表示されます。

この問題から抜け出すために私を導いてください...

4

1 に答える 1

1

ユーザーは、サーバー上のローカル パスに直接アクセスできません。

d:\path_to_file の代わりにhttp://youdomain.com/path-to_fileのようなものを生成する必要があります

それで

protected void Button1_Click(object sender, EventArgs e)
{
    var fullPath = ResolveUrl(filePath); // this could work instead of string concat
    //var fullPath = String.Format("{0}/{1}",serverpath,filepath);
    frmWord.Attributes.Add("src", fullPath);
}
于 2013-05-18T10:09:47.500 に答える