@if (list != null && list.Count>0)
{
<tr>
<td>申请表</td>
<td><a href="/policy/declare/readPDF/?coinfigid=@ViewBag.coinfigid" target="_blank" class="layui-btn layui-btn-normal layui-btn-xs">预览</a></td>
</tr>
if (ViewBag.hascheck == 1)
{
<tr>
<td>确认单</td>
<td><a href="/policy/declare/readPDF/?coinfigid=@ViewBag.coinfigid&type=1" target="_blank" class="layui-btn layui-btn-normal layui-btn-xs">预览</a></td>
</tr>
}
foreach (var item in list)
{
<tr>
<td>@item.contractname</td>
<td><a href="/policy/declare/readPDF/?id=@item.ID&coinfigid=@ViewBag.coinfigid" target="_blank" class="layui-btn layui-btn-normal layui-btn-xs">预览</a></td>
</tr>
}
}
服务端:
/// <summary>
/// 读取PDF文件
/// </summary>
/// <param name="fName">文件名称(可以从其他地方传进来)</param>
/// <returns></returns>
public FileStreamResult readPDF(string coinfigid, int id = 0, int ischeck = 0)
{
var model = dbContext.policy_declaredata.FirstOrDefault(m => m.username == LoginUser);
var hetong = dbContext.policy_tradeproject.FirstOrDefault(m => m.ID == id && m.username == LoginUser);
if (model == null)
{
GoTo404();
}
if (id != 0 && hetong == null)
{
GoTo404();
}
string pdfurl = string.Empty;
string filename = string.Empty;
if (id == 0)
{
if (ischeck == 1)
{
//确认单
pdfurl = System.Web.HttpContext.Current.Server.MapPath("/files/policy/" + LoginUser +
"/" + coinfigid );
filename = "check.pdf";
}
else
{
//申请表
pdfurl = System.Web.HttpContext.Current.Server.MapPath("/files/policy/" + LoginUser +
"/" + coinfigid );
filename = "info.pdf";
}
}
else
{
pdfurl = System.Web.HttpContext.Current.Server.MapPath("/files/policy/" + LoginUser +
"/" + coinfigid );
filename= hetong._id.ToString() + ".pdf";
}
DirectoryInfo mydir = new DirectoryInfo(pdfurl);
string pdfSrc = string.Empty;
foreach (FileSystemInfo fsi in mydir.GetFileSystemInfos())
{
if (fsi is FileInfo)
{
FileInfo fi = (FileInfo)fsi;
string x = System.IO.Path.GetDirectoryName(fi.FullName);
string s = System.IO.Path.GetExtension(fi.FullName);
if (fi.Name == filename)
{
pdfSrc = x + "\\" + fi.Name;//pdf路径
ViewBag.title = fi.Name;//网页标题
}
}
}
FileStream fs = new FileStream(pdfSrc, FileMode.Open, FileAccess.Read);
return File(fs, "application/pdf");
}