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 控件中会显示“无法理解地址,Firefox 不知道如何打开此地址,因为协议 (d) 与任何程序都没有关联。”

请指导我摆脱这个问题......

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 回答