我必须在.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
我试过了,即firefox,chrome也......
如果是firefox,iframe内部会控制它说&#34;地址不明白Firefox不知道如何打开这个地址,因为协议(d)并不与任何地址相关联。程序&#34;
请指导我摆脱这个问题...
答案 0 :(得分: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);
}