MVC :: RedirectToAction Params And Breakpoints / Value Of 'projectID_DDL' Is Null When The Redirect Occurs?
Jul 12, 2010
I have an ActionResult method that loads a user-selected project. When the user makes a selection from a select html element, the id is passed in and loads the project. This works fine. The user can also submit the form, which saves certain information and then calls a RedirectToAction that passes the project id back into the load method. This is where the problem occurs. Here's the relevant code:
[Code]....
The problem is that the value of 'projectID_DDL' is null when the redirect occurs. I'm aware that during a form post that variable is automatically mapped to the name of the html element, so my first question is if that precludes referring to the parameter name as anything else, even in code. In regular methods, it doesn't matter what you call the variable, provided it's the correct type for the parameter it corresponds to, but ActionResult methods might differ. My second question is about break points. In order to test that the value of 'projectID_DDL' is what I passed in, I set a break point. It was never hit. I even tried adding a line before the return View statement, thinking perhaps that the return View statement threw the exception, and so its breakpoint wasn't being hit. This didn't work, either.
if the code below would achieve what I want, which is: Check if the query parameters 'return_path' and/or 'user_state' are present in the query string, and if so append them to the query string of the redirect URI. As I'm not a .NET dev and don't have a server to test this on, I was hoping someone could give me some feedback.
ArrayList vars = new ArrayList(); vars.Add("return_path"); vars.Add("user_state");[code].....
sir when any connction or error or exception generated in a page then control will go to where(which section)in the web.config file. i have to create a page when any exception or error or connection fails occurs from that it will redirect to login page so what code i have to write under web.config file pl tell me?
i have a webform which has got required field validators. when the user doesnt enter values and clicks submit button it should not cause postback. i have set CausesValidation="True" on the submit button.hen the user clicks submit button without entering values, validation occurs( red * marks are shown) but the postback also occurs.
I have a data driven asp.net website with frames on the top, left, right and center screen. If a page generates an error on any of the frames, I want to redirect the whole site back to the Default.aspx. Currently, when a frame page errors in one of the frames, that frame gets the error pages. Site is URL.... Is this something that can be handled?
In certain pages when i try to rediect to a perticular page the Session automaically gets assigned to null, have no idea why is this happening.-No where I'm using Session.Remove or Session.RemoveAll.-Also not even using EnableSessionState="true" or "false" as by default it will always be true, I know...
I have an ASP.NET web application that takes user input across several forms. Sort of like a wizard. On the first form, the user enters information then clicks the "Next" button. In the Click event of the button I save some information to the Session object (via Properties in the Master page). I then Redirect to the next page. Here is an example of what I am doing:
protected void NextButton_Click(Object sender, EventArgs args) { //Go to the next form Master.SessionVal1 = Value1; Master.SessionVal2 = Value2; Response.Redirect("~/TheNextPage.aspx", false); }
In the MasterPage.cs..
public long Value1 { get { return (long)Session["Value1"]; } set { Session["Value1"] = value; } }
public long Value2 { get { return (long)Session["Value2"]; } set { Session["Value2"] = value; } }
Pretty basic stuff. When I run this in debug mode in VS2008 it works perfectly. When I push this to a test server (IIS7) I get NullReference exceptions when I try to access Value1, Value2, etc. which is stored in the Session object. UPDATE: I have discovered that if I migrate the code to one server I get the problem as described above. BUT, if I promote to another server it works as expected. Both servers are Windows Server 2008 with IIS7. I have looked at the application pool settings and the state management settings and I do not see any differences.
While adding the parameters to get/post request they need to be encoded in application/x-www-form-urlencoded form. So do we need to encode values each time ? Does JavaScript have any method for that ? What are the possible caches ?On server side when we read the values we do not decode them we directly say Request.Params["key"] and that returns value. Does that mean that they are automatically taken care when we read the values?
I have an ASP.Net site (happens to be MVC, but that's not relevant here) with a few pages I'd like cached really well.
Specifically I'd like to achieve:
output cached on the server for 2 hours.if the file content on the server changes, that output cache should be flushed for that page cached in the browser for 10 minutes (i.e. don't even ask the server if it's that fresh)when the browser does make an actual subsequent request, I'd like it to use etags, so that the server can return a 304 if not modified.
(note - time values above are indicative examples only) 1) and 2) I can achieve by Response.Cache.SetCacheability(HttpCacheability.Server) I know 3) can be achieved by using max-age and cache-control:private I can emit etags with Response.Cache.SetETagFromFileDependencies();
but I can't seem to get all of these things to work together. Here's what I have:
can browsers do both 3) and 4) like that? When Firefox issues a new request after it expires in the local cache, it does indeed send the etag the server responded with before, but I get a 200 response.setting the variables like above, where would I set the duration of the output caching?
I know how to call a simple old fashion asmx webservice webthod that returns a single value as a function return result. But what if I want to return multiple output params? My current approach is to separate the params by a dividing character and parse them on teh client. Is there a better way.
Here's how I return a single function result. How do I return multiple output values?
I have created a custom validation attribute for a class. The validation is actually against one property of the class, but since it needs to be compared to another property of the class at runtime, I had to pull in everything from the input form, perform the validation and output the errors. This being the case, I manually added a ModelError to ModelState if the ModelStats.IsValid returned false. I have another thread that goes into this, as I still haven't been able to make the client-side validation work for the custom validation (built-in validation runs client-side without a problem).
Here's the issue: I want to use the Post/Redirect/Get pattern to avoid issues where users refresh their page and cause another post of the form data. If I complete my Controller action and return a View after assigning an error with ModelState.AddModelError, I get the user feedback with the red input field and error message shown. However, just returning a View like this makes you vulnerable to the repeated posts issue. I want to use RedirectToAction to perform a get and avoid this problem, but when I do that I no longer have the ModelState error feedback on my rendered View. Here're the calls I'm making:
[Code]....
I'd like to be able to redirect to a get action and retain the ModelState.
Yesterday I've installed IE8 but now my debugging and breakpoints does not work in VS 2005! How can I make it work again? Is it a special browser setting?
I am trying to debug a webservice that is hosted in IIS. When I open it through Visual Studio as a website, put a breakpoint and run it, it is executing as expected but none of the breakpoints are being hit. When I remove the virtual directory from IIS, I am able to hit the break points. One of the suggested solutions was to attach aspnet_wp process during Debug. But the aspnet_wp is not running on the system (I have checked the options 'Show processes from all users' and 'Show processes from all sessions').
I use the RedirectToAction with parameters in my action method
return RedirectToAction("ListThreads", "View", new { category = "1", subcategory = "49"}); After redirect the url comes out like this http://domain/Forum/View/ListThreads?category=1&subcategory=49 I want it to be generated like http://domain/Forum/View/ListThreads/1/49
How to do it?
Note : I already have a route in global.asax that is used by all the pages/links.
I created a new ASP.NET MVC application and the accompanying unit tests that can be generated automatically. I created a new Controller method and tried to wire up a test. The test failed, and I tried to step through the test code to find out the state of certain variables. The breakpoint showed as being set, but it never was hit.
I did a Google search on this, and there are many other people wondering the same thing - why doesn't this work? The answers have been sketchy at best. The most proliferant seems to be that the unit tests are run in the production configuration instead of the debug configuration, and so several steps are required to get breakpoints to work. Seriously? This is something I would expect to be enabled by default. What good is test code you can't step through? Why create a set of unit tests that require you to jump through several hoops to get this very basic feature running? NUnit (and I suppose others) don't have this issue.
how to get the breakpoints to work were completely different than all the others, and I'd like to know if anyone has an idea of how to enable debugging of the unit tests that are included in Visual Studio 2008.