我现在是点击,直接下载。 我想再做一个,点击能够在浏览器打开,因为 谷歌浏览器 可以直接打开 PDF文件,可以直接浏览
public ActionResult GetFile(string id)
{
//var dl = DownloadsDal.GetById(id);
var book = LibraryBLL.GetBook(id);
if (!(bool)book.CanDownload)
return Content(ClientScript.AlertAndBack("亲,这样做,不对哦!!!")); //防止用户输入超链接下载 if (book == null)
return JavaScript(ClientScript.AlertAndBack("对不起,不存在指定的下载项目")); StringBuilder sb = new StringBuilder("~" + book.VirDir).Replace("\\","/").Append(Constants.BookName).Append(book.Extension);
string filePath = HttpContext.Server.MapPath(sb.ToString());
if (!System.IO.File.Exists(filePath))
return Content(ClientScript.AlertAndBack("对不起,要下载的文件不存在,该文件可能已被删除或改名")); FilePathResult fpr = File(filePath, "application/octet-stream", book.Title);
LibraryBLL.UpdateDownloadTimes(id); //更新下载次数
return fpr;
}
解决方案 »
- shtm中include产生间距
- 使用FileUpload控件选择本地文件上传,文件过大,怎样显示自定义错误页?
- 关于.net上传图片显示问题-----------------------------------(在线等)
- 有一张表有5条记录,A查询时,根据条件,查询到2条记录,如何让B只查询到另外的3条记录,被A查询的记录不再被B查询和显示。?同时如何解
- 如何实现网络层的安全?
- 网页做好了放到服务器上首页内容可以从SQL-SERVER调出,可在别的页面就不行了?
- IsAuthenticated问题
- 如何在关闭框架网页中的子网页时清除它的session?
- 这样的效果如何实现?在线等...........
- asp.net中让我困惑的问题
- 关于静态页的问题
- 构造传递url?
好啊,原来看过你一个文库的例子 :)
我现在也弄了一个现在想当鼠标在flexpaper上滚动时,希望flexpaper的高度自动填满浏览器高度,就像百度一样
或者你自己用JS和flexpaper来交互
我后边百度了,QQ邮件的预览,相当于把附件内容转换成html,并不是直接用web打开。后台应该有个转换,编码过程。