MVC :: Action Returning More Than One ActionResult?
Feb 25, 2010
I have an action that returns a file path as ActionResult, I want that action to return a file path and change the View. Is there a way I can make an action return more than one ActionResult?
But child-action can not return a redirect-action-result, because this code is excuted when server is rendering HTML to client.
Now, I want to invoke an action by code in Controller, it returns an ActionResult. Then, if it's a redirect-result, I returns it. Otherwise, in Razor code, I renders this ActionResult. For example:
this is the first controler which is calling my applciation I am getting all my studentinfo for updating studnetcan i call this et in updateresult Action result?
public ActionResult getresult(StduentInfo et) { return PartialView("Student", et); public ActionResult updateresult(Stdentinfo et) [code]...
We have a web project that contain its business methods in a class library project called "Bll.dll" some methods of Bll.dll return List<> ... from a source - that i don't remember now - told that returning Collection<> is better than returning List<> Is it a valid ? Note that i don't make any process on values returned from BLL methods .. just view it in a web page
I'm implement Comet in Asp.net MVC, I used timer to keep Async request in server, Async request will complete when timer elapsed 1 minute and response to client (to avoid 404 error) and then reconnect to Async Controller. I also wanna execute some Synchronous action during Async request was holding, but the problem is: When an Async action was executed and hold by using timer, the Sync Action wasn't called until Async action (comet long-live request) completed. I did test with firefox 3.6 many times, but the result is the same, so strange, Do you know why ? I have a sub some questions : To implement comet, using timer (response after some minutes elapsed) or thread (response after several time sleeping thread) to hold async request, which is better?
I am desiging a master and details page from a search page..user can search for something and I need to display the result in jqgrid if the result has more than 1 row or record.. if the result is just one record then i have to directly send then to details page by skiping grid page... I do have an action method for results page and one more action method for Jqgrid data..i am trying to check the row count for the database result and trying to redirect to details action results..but its not working at all..and showing an empty jqgrid..
Lets say I have a simple controller for ASP.NET MVC I want to test. I want to test that a controller action (Foo, in this case) simply returns a link to another action (Bar, in this case).How would you test TestController.Foo? (either the first or second link)
My implementation has the same link twice. One passes the url throw ViewData[]. This seems more testable to me, as I can check the ViewData collection returned from Foo(). Even this way though, I don't know how to validate the url itself without making dependencies on routing.The controller:
public class TestController : Controller { public ActionResult Foo()[code].....
My httppost action doesnt seem to have received my model. The code is below;
[Code]....
i put a breakpoint on the line; return RedirectToAction("Error", "Dashboard"); and i found that appQualif carried no values whatsoever from the form i submitted..
I've been using Html.Action("ActionName", "ControllerName") to invoke child actions across controllers without needing to have the view in ViewsShared. This has been working great for displaying things like session or cookie information.
Instead of just accessing cookies, I would like to pass additional parameters to Html.Action("ActionName", "ControllerName") so the action can execute different code based on the the data passed to the original view.
Should I be using a different method to pass parameters to a child action in a different controller?
I'm trying to add file upload functionality to a page. I've got a form that posts the selected file to a controller with a 'savefile' method. But if I don't add a get version of 'savefile' I'll get a 404 error. Here is the form code which is presented on the Index page:
[Code]....
And here is the controller code:
[Code]....
Intuitively I don't think I should need a GET version of SaveFile but if omit it I get a 404 error when the form posts. Why should I need a GET version of SaveFile when all I want is to post a form and save the file?
I have a dropdown with several items (hardcoded) and next to it I have a submit button - which invokes an Action in the controller. I can successfully identify the submit button in the controll using the name and value attributes of the submit button, but how can I send the selected value of the dropdown control to the controller?
[Code]....
Then inside the controller I can identify that the submitButton with value of "Start Task ..." has been clicked, but I do not know how to know which value in the dropdown was selected?
our implementation of an mvc site is being done in a very weird way but none the less it is still mvc.
I have an issue that on a certain page, when you click a button to download a document, it retrieves from a web service a byte array of a document. This is not an issue as i pass this byte array into the view data to allow me to access it in our controller.
This is the code in the controller.
[Code]....
Now this all works ok but as expected the result is rendered out into the current window. Is there anyway at all i can trigger a new window to render out the document?
[HttpPost] public ActionResult Start(SomeViewModel someViewModel) { ... }
that based on some conditions returns things like return View("Invalid"), View("NotFound"), View("Run", anotherViewModel), etc. The problem is that no matter what view I present, the URL does not change to reflect the new controller/action. This poses a problem when my View wants to post to a different action. How can I fix this?
When i select a dropdownlist and submit , dropdown selected value comes to textbox and freetextbox. Its working well
Again i m adding contents to freetextbox
Again i select a dropdownlist and submit , dropdown selected value comes to textbox and freetextbox. The newly selected value only comes to textbox and freetextbox, but my old contents are not exists in freetextbox.
I need old contents and dropdown selected value comes to freetextbox.
I have the following action result class that looks for a content type of "application/json" in the request and executes a jsonresult or the default result. My problem is that I don't know how to test the ExecuteResult method.This is the method in question:
I am trying to implement a way to send email templates in my application and would like to populate an ActionResult view with data and then output the view HTML as a string to use as the body of my email. I found the following
blog post but have not been able to get it to work correctly in my app and was wondering if anyone had been able to implement something similar. The issue that I am running into is that I have created one controller, EmailController, to handle all generation and returning of the the view strings. So for instance if I am in my home controller and I have a contact form whose action is Contact when the user submits the contact form I want to call the email controller to get the correct action result for the email template and upon successful send of the email redirect the user to a success action on the home controller.
By default ASP.NET MVC uses ContentResult for controller method that return result not inherited from actionresult type. That is why if we will return some poco entity it will be only its type name.Could I overload something in controller to make it return jsonresult by default.Example:// return json product representation instead of product typename
public MyController: Controller { public Product MyAction() { return new Product { Name = "Foo", ID = 1 }; [code]...
I am lost, I am posing a jSon result to an MVC ActionResult and I cannot get it done. What I have is on the View:
[Code]....
With Firebug I can see that I am posting a jSon result with the result I selected. This result is comming from a select list(UnAssignedPages) as the items selected.
Now I want to iterate over that list in the controller and I cannot find an example of how to do it? I found a jSon value provider from Phil Haack [URL] but I was specifically told not to use the Futures Library. Is there any example of how to accept a jSon result in an ActionResult?