在asp.net网站上,在一个WebForm上,在按钮onclick事件之后,我正在调用代码隐藏方法,如下所示
protected void Button1_Click(object sender, EventArgs e)
{
MyClass obj = new MyClass();
String res = obj.CallMe("some parameters");
}
MyClass位于 MyClass.cs 文件中。 在 CallMe():
内public String CallMe("some parameters")
{
String to_return ="";
//some code : to_return="something";
string page_name= // some code returns a name of page to redirect to
if(page_name is null)
{ return to_return; }
else
//redirect to page_name;
}
如何从.cs文件重定向,因为我们无权访问HttpResponse对象?
答案 0 :(得分:1)
如果从网页中调用您的类,则可以访问该类中的静态HttpContext.Current
实例。只需导入System.Web命名空间并正常调用:
using System.Web;
System.Diagnostics.Debug.WriteLine(HttpContext.Current.Timestamp.ToString());
HttpContext.Current.Response.Redirect("http://www.google.com");
答案 1 :(得分:1)
试试这个
if(HttpContext.Current != null)
HttpContext.Current.Response.Redirect("~");
使用HttpContext可以获取当前请求,响应等。但是,请务必检查以确保当前上下文不为空,尤其是在从业务层类调用时。