Redirect Page Using HttpContext?
Apr 30, 2010I am new in ASP.Net and C#.
I have used HttpContext.Current.Response.Redirect in a class file.
Is it right? or if any problem occur by using this?
I am new in ASP.Net and C#.
I have used HttpContext.Current.Response.Redirect in a class file.
Is it right? or if any problem occur by using this?
What is the easy/safe way to get all HttpContext.Current data (like querystring, etc) in the previous page, after response.redirect or server.transfer to another page?
I am using .net 3.5
I am trying to redirect to the same page with different query string parameters
HttpResponse resp = HttpContext.Current.Response;
resp.Redirect(landingPagePath)
To avoid further processing after redirection i check if
HttpContext.Current.Session.IsNewSession == false
but for some reason i found that this is not always the case after redirection
As I have migrated Web Application from 3.5 (VS 2008 ) to 4.0 Vs (2010)
Now i am having problem with Response.Redirect
As I in .aspx pages i have found the following solution and it is working fine.
old Code with is not Working in Vs2010
[code]....
But now I need to Redirect from the class librarySo can any one guide me on the same.. i can i redirect .. AS I have try with HttpContext.Current.Response.Redirect(strURL); but it is not working.
We're migrating an application to use IIS7 integrated mode. In library code that is designed to work either within the context of an HTTP request or not, we commonly have code like this:
if (HttpContext.Current != null &&
HttpContext.Current.Request != null) {
// do something with HttpContext.Current.Request
} else {
// do equivalent thing without HttpContext..
}
But in IIS7 integrated mode the check for HttpContext.Current.Request throws an exception whenever this code is called from Application_Start.
protected void Application_Start(object sender, EventArgs e)
{
SomeLibrary.DoSomethingWithHttpContextCurrentDetection();
}
Results in:
System.Web.HttpException: Request is not available in this context
How can I detect whether the request is really available without wrapping these calls in an exception handler and taking action based on whether an exception is generated or not.
Looking at HttpContext in Reflector I see it has an internal bool HideRequestResponse field but it's internal so I can only get to it with reflection and that's fragile. Is there a more official/approved way to determine if it's ok to call HttpContext.Request?
This blog post about the subject says not to use HttpContext, but how, in generic library code, can you determine if it's ok to use HttpContext?
http://mvolo.com/blogs/serverside/archive/2007/11/10/Integrated-mode-Request-is-not-available-in-this-context-in-Application_5F00_Start.aspx
I'm using the work-around mentioned there which is to use Application_BeginRequest and an initialized field to only initialize once as part of BeginRequest, but that has to be done in every calling application whereas I'd prefer to make the library code more robust and handle this situation regardless of where it's called from.
I have a problem with Response.Redirect to specific error page.
so far i have something like :
protected void Page_Load(object sender, EventArgs e)
{
if ((Request.QueryString["UbytovaniePrispevokID"].ToString()) == "")[code]......
What i want to do is.. I have one main page with new posts Each subject of the new post is the link to Another page where is Specific post and coments and user can leave a coment.
What I want is when the Request.QueryString["UbytovaniePrispevokID"].ToString()) == "" or null I want to redirect to error page ...
anybody know about different between this.Page and (Page)HttpContext.Current.Handler?i had a problem that this.page returned null, and someone wrote me that using the construct "(Page)HttpContext.Current.Handler" will be better. what the different?why and when this.page return null?
View 2 Replieshow can i redirect to other page from pop up window with response.redirect.
View 2 RepliesI have been experimenting with code that will clear all of the cookies in an HttpContext.Response.Initially, I used this:
DateTime cookieExpires = DateTime.Now.AddDays(-1);
for (int i = 0; i < HttpContext.Request.Cookies.Count; i++)
{
HttpContext.Response.Cookies.Add(
new HttpCookie(HttpContext.Request.Cookies[i].Name, null) { Expires = cookieExpires });
}
this will error with an OutOfMemoryException because the for loop never exits - each time you add a cookie to the Response, it also gets added to the `Request.
i'm using an example in which i can fake the session.It's for use in a unittest of a mvc controller.In the test i create a controller and then i do this:
FakeHttpContext httpctx = new FakeHttpContext(null,null,null,null,mSessionItems );
ControllerContext ctx2 = new ControllerContext(httpctx,new RouteData(), target);
here mSessionItems is my session and target is my instance of a controller,and indeed, when i'm in a controller reading this.ControllerContext.HttpContext.Session, i have a session, great!but.... i also read the session outside the controller, and there i use HttpContext.Current.Session, and that is null (or actualy, the HttpContext.Current is null).
Per different user mode, some pages should not be accessible by users unless they have a valid session key.In your opinions -- would it be better to have a list of acceptable pages in the master page, and check if the current page is valid for the current user? Or handle this on every child page?I'm thinking master page, just want to hear what your input would be.
View 2 RepliesI have a situation where in, one of the form has to show some processing message on the Page and then automatically redirect to another page.
View 5 RepliesBuilding asp.C# shopping app that is using a hosted payment page to process payments (using posting of data to a hosted payment page). SSL certificate is signed and installed.
Flow:
Prelim) (HTTPS) Users authenticate using asp Login control
1) Users add items to cart.
2) (HTTPS)Users go to checkout page.
3) Users finalize their order, then click pay now after agreeing to T&C.
4) Server gets cart data (from MSSQL2005) and sets a transaction cookie (expiry set to 20 mins).
5) (HTTPS) Server Response.Redirects to an html page (in the same folder as the login protected pages).
6) Html page reads transaction cookie data and generates form fields.
7) (HTTPS) Html page posts data to hosted payment page (php).
8) User enters payment info and clicks pay now.
9) (HTTPS) hosted payment page posts info back to a .aspx page that checks if payment OK.
10a) If payment !OK, redirects to a declined page.
10b) (HTTPS) If payment OK, sets a verification cookie (expiry set to 20 mins). Then redirects to another html page.
11) Html page reads cookie data and generates form fields.
12) (HTTPS) Html page posts data to hosted verification page (php).
13) Verification page verifies (of course), if transaction ok.
14) (HTTPS) verification page posts data to a .aspx page that checks if verification OK.
15) If verification OK, process orders and do receipt stuff.
Issue:
This control flow was tested on an unsigned dev environment. SSL was being enforced, if needed on the unsigned SSL certificate. So we'd get prompts that certificate may be bad, but the control flow worked seamlessly.
However, now live with a signed SSL certificate, going from step 5 to 6, we are encountering a situation where some users (not duplicated every time, but verified that it does occur) when they click pay now and are redirected to the html page, they are forced back to the ~/login.aspx page (as if they were logged out).
Things to note:
a) The session did not time out.
b) The browsers have cookies and javascript enabled.
c) I can process the entire flow seamlessly on the same machine with other accounts, and occasionally, the same account.
So, basically, I'm stumped... Is this a viewstate error? A login control bug that won't let me redirect to an html page because it is now using a real SSL? Anyone have any experience with this kind of deal? I'm at a loss for solutions at this point.
I am not able to redirect the user to "SimpleUserLoginAfterRegistration.aspx" page if Administrator is in any one of the .aspx file inside Administrator Folder.
I tried to use: Response.redirect("/SimpleUserLoginAfterRegistration.aspx") But, it is saying Page not found error.
Following is my requirement :
I have 3 asp.net web pages. From the 1st page i am opening showmoadlDialog(2nd page) in which(2nd page) i am storing some value in session(Ineed to do this here only) and checking some count which is coming from database, If count is Zero it will display message but if some value is there and then if i click on Ok button it will redirect to 3rd page. And close the 1st and 2nd Page.
how to do this ?
When i am clicking on Ok button it is showing some cofirmation message(Do you want to close this window) but this i dont want.
i have a page with a piece of code. what the scenario is that that page can have more than two querystrings. for example it may have home.aspx?pck=1 or sumtimes it may have home.aspx?name=a
so i want to redirect to someother page based on the query string the page has.
[Code]....
this is what i have done now....bt couldnt work through it...its raising an exception saying "reference is not set".
I have a simple page, which have a couple of textbox controls for order number and id, and a Button control which takes the input from the textbox controls to search in database.
I found that if I type something in the textbox control and hit enter key on the keyboard, rather than use mouse to press the button control, the page will be redirected to the startup page of the web application.
I am wondering is that because of the default setting of the page or anyway I can fix this?
I want to redirect to login page when any page is idle for 5 minutes and after re login I want to redirect to the page user is earlier in .
View 2 RepliesI am using built-in asp.net Role and membership provider in my website. when user login to my system they are redirected to hompage. how should i code it. that when he click on login button page check its role and then decide where to redirect. Suppose user login with name John and "john" is "Admin" then application Redirect him to AdminPanel.aspx and if User john is normal "RegUser" Role then redirect him into Home.aspx.
View 1 RepliesI have 2 aspx page:
1>companyMaster(CM) 2>CompanyBranchMaster(CBM)
In CompanyMaster ihave a gridview (listing all companyBranches) with select,Update,Delete button on it.On clicking select of anyone row in gridview ,it should redirect to CompanyBranchMaster page and there is a funciton in it dbSelectGrid to show the details of that Branch in form.
CompanyBranchMaster page contains a form with all the required fields and gridview and its funcitons.
My Question is if user clicks on grid of CM then it can be redirected to CBM with Response.Redirect.But how to call the function dbSelectGrid of CBMs page.
In logout link's click event i have written Session.Abandon() that will destroy the Session state.I am also handling Session_End event that is fired afterward (written in Global.asax). But one more thing i want is that after Session ends, login page should be redirected (opened).
For that i wrote:
[Code]....
This is working fine on the surface, but after applying debugging i saw that there were unexpected number of calls to Session_Start and Session_End events for two times, then login page was opened.
Why Session_Start and Session_End was called two times ? If i left this process as it is working then may i get some serious error in future ?
This is a small intranet site.
I am using Windown Authentication.
Using Role based (Active directory groups) authorization, I am able to control the access to various web pages. If an unauthorized user reaches a web page, a small popup comes up (as shown in the attached bit map) asking for credentials. If the user clicks on "Cancel" button on the popup, it shows "Access denied" error.
Instead of showing the standard "Access denied" error, I want to redirect to another .aspx page with a more meaningful message.
I have created an order checkout page.when i click checkout button then it check user login or not if not then it redirect to login page .after login i want to show
my previous link page
So I understand that the HperLink is a Client Side Control but I need code behind so that I can store the click event in the database. If I use the Link button, I have the opposite issue where I can access the client side but cannot open the url since this control does not have the NavigateUrl attribute.
<asp:HyperLink ID="hlnkCompanyName" runat="server" NavigateUrl='<%# Eval("CompanyAdRedirectURL") %>'
I am trying to redirect a user to a member only web page after the login page.
I have the following web forms.
LoginForm.aspx
PublicForm.aspx (anyone can see)
SecureForm.aspx (members only)
In the Web.config, I included
Code:
<authentication mode="Forms">
<forms name="Login"
loginUrl="LoginForm.aspx"
protection="All"
slidingExpiration="true"
path="/">
</forms>
</authentication>
<authorization>
<deny users="*"/>
</authorization>
<location path="PublicForm.aspx">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
<location path="SecureForm.aspx">
<system.web>
<authorization>
<deny users="guest"/>
<allow users="member"/>
</authorization>
</system.web>
</location>
</authorization>
For the Login button in the LoginForm.aspx, I used this
Code:
FormsAuthentication.RedirectFromLoginPage(txtID.Text.Trim, False)
This code directs me to the Default.aspx which has nothing in it.
I will have a 404 if I take out the Default.aspx.