asp.net – 如何使用Response.OutputStream.Write将文件发送到浏
我有一个页面用于从数据库中提取文件,并提示下载或流式传输到浏览器,具体取决于URL的格式.这工作正常,但是当我尝试设置页面标题时,我所做的任何事情都不起作用,它默认为URL中的域名.
我意识到这很有可能发生,因为我使用Response.OutputStream.Write(buffer,bytesRead)向浏览器发送二进制文件,所以根据我在网上找到的其他东西“我用二进制文件填充缓冲区所以我无法控制标题“
在这里找到:http://forums.asp.net/t/1088814.aspx/1 我已经尝试了所有正常的地方来设置页面标题: <%@ Page Language="VB" AutoEventWireup="false" CodeFile="FileServer.aspx.vb" Inherits="FileServer" Title="Title goes here" %> 要么 <head runat="server"> <title>Title goes here</title> </head> 要么 Protected Sub Page_Load(ByVal sender As Object,ByVal e As System.EventArgs) Handles Me.Load Dim FileNumber As String = RouteData.Values("FileNumber") Dim Disposition As String = RouteData.Values("Disposition") If FileNumber IsNot Nothing Then Title = "Title goes here" ServeFile(FileNumber,Disposition) End If End Sub 我有什么方法可以设置这个头衔还是我运气不好? 解决方法
在将文件发送到浏览器的同时,您无法设置标题.对于浏览器更改“页面”标题,它需要实际呈现HTML文档(即,它需要呈现页面).
在这种情况下,您不会发送任何有效的HTML内容,因此下载了您要发送的内容. 如果你想这样做,你需要做的就是做一些“反弹”.重定向到呈现标题的页面,以及您想要的任何其他内容(即aspx页面).从该页面“弹出”浏览器到下载. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ActiveDirectory ASP.NET中的当前用户名
- asp.net – 如何重命名Visual Studio 2012中的IIS Express网
- 如何在ASP.NET成员资格中访问UserId而不使用Membership.Get
- asp.net-mvc – 返回ASP.Net Core MVC中的上一页
- asp.net – 带有requireSSL for cookies的Sitecore
- 优化 – MVC4捆绑策略
- asp.net-mvc-3 – 可用会员入门套件/成员资料用于ASP.NET M
- 为什么ASP.NET MVC中的移动视图在不同的服务器上显示不同?
- asp.net-mvc-3 – MV3复选框的重复查询字符串值(true,false
- asp.net简单生成XML文件的方法
- asp.net – CollapsiblePanelExtender在初始页面
- asp.net – 默认的Razor cshtml名称空间定义在哪
- asp.net – 从ActionFilterAttribute返回自定义H
- 线程是否在ASP.Net中的请求之间重用?
- asp.net-mvc – asp.net mvc从包中排除css文件
- asp.net-mvc-3 – 如何在MVC3中为iframe的src属性
- asp.net-mvc – 使用ASP.New MVC 4 Web Api进行授
- asp.net – 如何使用MVC 4和View Models(强类型)
- Asp.Net Core&Jenkins持续交付到Windows Ser
- asp.net – 如何自动执行功能/集成测试和数据库回