我正在尝试从本地存储库中读取文件夹,并且我想在浏览器上显示PDF文件。 当有人点击该浏览器时,应该能够看到PDF文件。
我正在创建一个指向该PDF的动态链接,但问题是,当我点击在Chrome中动态创建的链接时,它不会执行任何操作。但在IE中它工作正常,但它要求我启用内部网设置。
我正在使用的代码如下:
String link = "D:\\MyDir\\";
DirectoryInfo di = new DirectoryInfo("D:\\MyDir");
FileInfo[] rgFiles = di.GetFiles("*.pdf");
foreach (FileInfo fi in rgFiles)
{
Response.Write("<br><" + "a href=" +link+ fi.Name.ToString() + " runat= server >" + fi.Name.ToString() + "</a>");
}
答案 0 :(得分:0)
我认为你的proplem是变量的地方。
试试这个
string aLink = string.Format(@"<br/><a href=""{0}"" runat=""server"" >{1}</a>",link+ fi.Name.ToString(),fi.Name.ToString());
答案 1 :(得分:0)
最有可能的问题是url没有用引号括起来,请尝试将代码更改为
Response.Write("<br><a href=\"" +link+ fi.Name.ToString() + "\" runat= server >" + fi.Name.ToString() + "</a>");
编辑谷歌浏览器存在一个限制因为安全原因阻止您打开本地文件,但有extension LocalLinks允许您这样做
答案 2 :(得分:0)
在这种情况下是否需要runat = server?您只是创建一个静态链接。
Response.Write("<br/><a href='" +link+ fi.Name.ToString() + "' target='_blank'>" + fi.Name.ToString() + "</a>");