我正在使用Server.Transfer.一切正常,但异常日志显示以下异常.
System.Threading.ThreadAbortException: Thread was being aborted.
at System.Threading.Thread.AbortInternal()
at System.Threading.Thread.Abort(Object stateInfo)
at System.Web.HttpResponse.End()
at System.Web.HttpServerUtility.Transfer(String path, Boolean preserveForm)
at System.Web.HttpServerUtility.Transfer(String path)
Run Code Online (Sandbox Code Playgroud)
任何想法避免上述异常.
ASP.NET中的Response.Redirect和Server.Transfer有什么区别?
在什么情况下,人们想要使用一个而不是另一个?
可能重复:
Response.Redirect与Server.Transfer
Server.Transfer Vs. 的Response.Redirect
response.redirect和server.transfer有什么区别?我知道的唯一区别是:在response.redirect中,浏览器URL更改为目标页面以及server.transfer,url保持不变!还有其他区别吗?
这是以下代码,一旦btninsert单击事件完成,页面就会刷新我希望在单击btninsert后停止页面刷新
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div style="margin-bottom: 20px; margin-top: 20px;"><span><strong style="font-size: large;">Edit User</strong></span></div>
<div>
<span style="float: left; width: 50%;"> </span> <span style="float: left; width: 50%;">
<span style="width: 100%; float: left; text-align: right;">
<asp:Label ID="lblMessage" runat="server" Text="-"></asp:Label></span>
</span>
</div>
<div style="width: 100%; float: left;">
<hr />
</div>
<div style="width: 816px; margin-left: 5px; margin-top: 20px; height: 463px;">
<div style="width: 100%; float: left; padding-top: 15px; height: 257px; margin-left: 0px;">
<span class="Divide">
<span class="simDivide1">FullName</span>
<span class="simDivide">
<asp:TextBox ID="txtfullname" runat="server" Width="180px">
</asp:TextBox>
</span>
</span>
<span class="Divide"> …Run Code Online (Sandbox Code Playgroud) 我正在将ASP.NET应用程序迁移到ASP.NET Core,并且他们有一些调用HttpServerUtility.Transfer(string path).但是,HttpServerUtilityASP.NET Core中不存在.
有没有我可以使用的替代方案?或者是Response.Redirect我唯一的选择?
我希望尽可能保持与旧应用程序相同的行为,因为Server.Transfer和Response.Redirect之间存在差异.
当我server.transfer("defaul2.aspx");
在url中写入时default2.aspx不显示而不是显示defaul.aspx页面.我写的时候response.redirect("default2.aspx");
在网址default2.aspx页面显示有什么不同.
我们有一个URLRewriting模块,它使用BeginRequest事件方法中的Response.Redirect来更改目标页面.
以下问题涵盖重定向和传输之间的差异,但不包括HTTP模块中的差异;
编辑: HttpContext.RewritePath也在模块中使用,所以我们似乎有三种技术可以从原始路径移动初始请求; 分别是Redirect,Transfer,RewritePath; 返回浏览器,返回HTTP管道的开始并继续处理新路径.
我用的时候
Server.Transfer的( "PageName.aspx");
我被转移到正确的页面,但网址是第一页的网址.
换句话说,比如page1.aspx Server.Transfers to page2.aspx.
呈现page2.aspx,但url读取page1.aspx.
问题是我需要将参数传递给url中的page2,并且params没有通过.
我通过使用来解决它
的Response.Redirect( "PageName.aspx PARM = VAL?");
我一直在使用Server.Transfer,因为我觉得它效率更高.
还有什么区别?使用一个而不是另一个是否有任何其他原因?
到目前为止,我有:
使用Response.Redirect
使用Server.Transfer
我在Umbraco有两个模板.一个用于桌面,另一个用于移动 我有一个小脚本,可以检测请求的用户代理并相应地重定向用户.
如果请求是从桌面进行的,则用户将被重定向到带有URL的桌面模板www.abc.com.
如果从移动设备发出请求,则会将用户重定向到带有网址的移动模板 www.abc.com/?alttemplate=mobilehomepage
如何使桌面和移动设备的URL相同.
我Response.Redirect用于重定向.
提前致谢.
asp.net ×9
c# ×4
.net-core ×1
html ×1
httpmodule ×1
javascript ×1
redirect ×1
umbraco ×1
umbraco-blog ×1
umbraco5 ×1