AsyncController Class
Provides the base class for asynchronous controllers.
Inheritance Hierarchy
System.Object
System.Web.Mvc.ControllerBase
System.Web.Mvc.Controller
System.Web.Mvc.AsyncController
Namespace: System.Web.Mvc
Assembly: System.Web.Mvc (in System.Web.Mvc.dll)
Syntax
'Declaration
Public MustInherit Class AsyncController _
Inherits Controller _
Implements IAsyncManagerContainer, IAsyncController, IController
public abstract class AsyncController : Controller,
IAsyncManagerContainer, IAsyncController, IController
public ref class AsyncController abstract : public Controller,
IAsyncManagerContainer, IAsyncController, IController
The AsyncController type exposes the following members.
Constructors
Name | Description | |
---|---|---|
AsyncController | Initializes a new instance of the AsyncController class. |
Top
Properties
Name | Description | |
---|---|---|
ActionInvoker | Gets the action invoker for the controller. (Inherited from Controller.) | |
AsyncManager | Gets the asynchronous manager instance. | |
Binders | Gets or sets the binder. (Inherited from Controller.) | |
ControllerContext | Gets or sets the controller context. (Inherited from ControllerBase.) | |
HttpContext | Gets HTTP-specific information about an individual HTTP request. (Inherited from Controller.) | |
ModelState | Gets the model state dictionary object that contains the state of the model and of model-binding validation. (Inherited from Controller.) | |
Request | Gets the HttpRequestBase object for the current HTTP request. (Inherited from Controller.) | |
Response | Gets the HttpResponseBase object for the current HTTP response. (Inherited from Controller.) | |
RouteData | Gets the route data for the current request. (Inherited from Controller.) | |
Server | Gets the HttpServerUtilityBase object that provides methods that are used during Web request processing. (Inherited from Controller.) | |
Session | Gets the HttpSessionStateBase object for the current HTTP request. (Inherited from Controller.) | |
TempData | Gets or sets the dictionary for temporary data. (Inherited from ControllerBase.) | |
TempDataProvider | Gets the temporary-data provider object that is used to store data for the next request. (Inherited from Controller.) | |
Url | Gets the URL helper object that is used to generate URLs by using routing. (Inherited from Controller.) | |
User | Gets the user security information for the current HTTP request. (Inherited from Controller.) | |
ValidateRequest | Gets or sets a value that indicates whether request validation is enabled for this request. (Inherited from ControllerBase.) | |
ValueProvider | Gets or sets the value provider for the controller. (Inherited from ControllerBase.) | |
ViewData | Gets or sets the dictionary for view data. (Inherited from ControllerBase.) |
Top
Methods
Name | Description | |
---|---|---|
BeginExecute | Called by ASP.NET to initialize asynchronous request processing. | |
BeginExecuteCore | Called by ASP.NET during initialization of asynchronous request processing. | |
Content(String) | Creates a content result object by using a string. (Inherited from Controller.) | |
Content(String, String) | Creates a content result object by using a string and the content type. (Inherited from Controller.) | |
Content(String, String, Encoding) | Creates a content result object by using a string, the content type, and content encoding. (Inherited from Controller.) | |
CreateActionInvoker | Creates an action invoker. (Overrides Controller.CreateActionInvoker().) | |
CreateTempDataProvider | Creates a temporary data provider. (Inherited from Controller.) | |
Dispose() | Releases all resources that are used by the current instance of the Controller class. (Inherited from Controller.) | |
Dispose(Boolean) | Releases unmanaged resources and optionally releases managed resources. (Inherited from Controller.) | |
EndExecute | Cancels the execution of an asynchronous action method. | |
EndExecuteCore | Called by ASP.NET when the current asynchronous action has completed. | |
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
Execute | Executes the specified request context. (Inherited from ControllerBase.) | |
ExecuteCore | Invokes the action in the current controller context. (Inherited from Controller.) | |
File(Byte[], String) | Creates a FileContentResult object by using the file contents and file type. (Inherited from Controller.) | |
File(Stream, String) | Creates a FileStreamResult object by using the Stream object and content type. (Inherited from Controller.) | |
File(String, String) | Creates a FilePathResult object by using the file name and the content type. (Inherited from Controller.) | |
File(Byte[], String, String) | Creates a FileContentResult object by using the file contents, content type, and the destination file name. (Inherited from Controller.) | |
File(Stream, String, String) | Creates a FileStreamResult object using the Stream object, the content type, and the target file name. (Inherited from Controller.) | |
File(String, String, String) | Creates a FilePathResult object by using the file name, the content type, and the file download name. (Inherited from Controller.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
HandleUnknownAction | Called when a request matches this controller, but no method with the specified action name is found in the controller. (Inherited from Controller.) | |
Initialize | Initializes data that might not be available when the constructor is called. (Inherited from Controller.) | |
JavaScript | Creates a JavaScriptResult object. (Inherited from Controller.) | |
Json(Object) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON). (Inherited from Controller.) | |
Json(Object, String) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format. (Inherited from Controller.) | |
Json(Object, JsonRequestBehavior) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format using the specified JSON request behavior. (Inherited from Controller.) | |
Json(Object, String, Encoding) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format. (Inherited from Controller.) | |
Json(Object, String, JsonRequestBehavior) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format using the specified content type and JSON request behavior. (Inherited from Controller.) | |
Json(Object, String, Encoding, JsonRequestBehavior) | Creates a JsonResult object that serializes the specified object to JavaScript Object Notation (JSON) format using the content type, content encoding, and the JSON request behavior. (Inherited from Controller.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
OnActionExecuted | Called after the action method is invoked. (Inherited from Controller.) | |
OnActionExecuting | Called before the action method is invoked. (Inherited from Controller.) | |
OnAuthorization | Called when authorization occurs. (Inherited from Controller.) | |
OnException | Called when an unhandled exception occurs in the action. (Inherited from Controller.) | |
OnResultExecuted | Called after the action result that is returned by an action method is executed. (Inherited from Controller.) | |
OnResultExecuting | Called before the action result that is returned by an action method is executed. (Inherited from Controller.) | |
PartialView() | Creates a PartialViewResult object that renders a partial view. (Inherited from Controller.) | |
PartialView(Object) | Creates a PartialViewResult object that renders a partial view, by using the specified model. (Inherited from Controller.) | |
PartialView(String) | Creates a PartialViewResult object that renders a partial view, by using the specified view name. (Inherited from Controller.) | |
PartialView(String, Object) | Creates a PartialViewResult object that renders a partial view, by using the specified view name and model. (Inherited from Controller.) | |
Redirect | Creates a RedirectResult object that redirects to the specified URL. (Inherited from Controller.) | |
RedirectToAction(String) | Redirects to the specified action using the action name. (Inherited from Controller.) | |
RedirectToAction(String, Object) | Redirects to the specified action using the action name and route values. (Inherited from Controller.) | |
RedirectToAction(String, String) | Redirects to the specified action using the action name and controller name. (Inherited from Controller.) | |
RedirectToAction(String, RouteValueDictionary) | Redirects to the specified action using the action name and route dictionary. (Inherited from Controller.) | |
RedirectToAction(String, String, Object) | Redirects to the specified action using the action name, controller name, and route values. (Inherited from Controller.) | |
RedirectToAction(String, String, RouteValueDictionary) | Redirects to the specified action using the action name, controller name, and route dictionary. (Inherited from Controller.) | |
RedirectToRoute(Object) | Redirects to the specified route using the specified route values. (Inherited from Controller.) | |
RedirectToRoute(String) | Redirects to the specified route using the route name. (Inherited from Controller.) | |
RedirectToRoute(RouteValueDictionary) | Redirects to the specified route using the route dictionary. (Inherited from Controller.) | |
RedirectToRoute(String, Object) | Redirects to the specified route using the route name and route values. (Inherited from Controller.) | |
RedirectToRoute(String, RouteValueDictionary) | Redirects to the specified route using the route name and route dictionary. (Inherited from Controller.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
TryUpdateModel<TModel>(TModel) | Updates the specified model instance using values from the controller's current value provider. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String) | Updates the specified model instance using values from the controller's current value provider and a prefix. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String[]) | Updates the specified model instance using values from the controller's current value provider and included properties. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, IValueProvider) | Updates the specified model instance using values from the value provider. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String, String[]) | Updates the specified model instance using values from the controller's current value provider, a prefix, and included properties. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String, IValueProvider) | Updates the specified model instance using values from the value provider and a prefix. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String[], IValueProvider) | Updates the specified model instance using values from the value provider and a list of properties to include. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String, String[], String[]) | Updates the specified model instance using values from the controller's current value provider, a prefix, a list of properties to exclude, and a list of properties to include. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String, String[], IValueProvider) | Updates the specified model instance using values from the value provider, a prefix, and included properties. (Inherited from Controller.) | |
TryUpdateModel<TModel>(TModel, String, String[], String[], IValueProvider) | Updates the specified model instance using values from the value provider, a prefix, a list of properties to exclude , and a list of properties to include. (Inherited from Controller.) | |
TryValidateModel(Object) | Validates the specified model instance. (Inherited from Controller.) | |
TryValidateModel(Object, String) | Validates the specified model instance using an HTML prefix. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel) | Updates the specified model instance using values from the controller's current value provider. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String) | Updates the specified model instance using values from the controller's current value provider and a prefix. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String[]) | Updates the specified model instance using values from the controller object's current value provider. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, IValueProvider) | Updates the specified model instance using values from the value provider. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String, String[]) | Updates the specified model instance using values from the controller's current value provider, a prefix, and included properties. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String, IValueProvider) | Updates the specified model instance using values from the value provider and a prefix. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String[], IValueProvider) | Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String, String[], String[]) | Updates the specified model instance using values from the controller's current value provider, a prefix, a list of properties to exclude, and a list of properties to include. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String, String[], IValueProvider) | Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include. (Inherited from Controller.) | |
UpdateModel<TModel>(TModel, String, String[], String[], IValueProvider) | Updates the specified model instance using values from the value provider, a prefix, a list of properties to exclude, and a list of properties to include. (Inherited from Controller.) | |
ValidateModel(Object) | Validates the specified model instance. (Inherited from Controller.) | |
ValidateModel(Object, String) | Validates the specified model instance using an HTML prefix. (Inherited from Controller.) | |
View() | Creates a ViewResult object that renders a view to the response. (Inherited from Controller.) | |
View(Object) | Creates a ViewResult object by using the model that renders a view to the response. (Inherited from Controller.) | |
View(String) | Creates a ViewResult object by using the view name that renders a view. (Inherited from Controller.) | |
View(IView) | Creates a ViewResult object that renders the specified IView object. (Inherited from Controller.) | |
View(String, Object) | Creates a ViewResult object by using the view name and model that renders a view to the response. (Inherited from Controller.) | |
View(String, String) | Creates a ViewResult object using the view name and master-page name that renders a view to the response. (Inherited from Controller.) | |
View(IView, Object) | Creates a ViewResult object that renders the specified IView object. (Inherited from Controller.) | |
View(String, String, Object) | Creates a ViewResult object using the view name, master-page name, and model that renders a view. (Inherited from Controller.) |
Top
Explicit Interface Implementations
Name | Description | |
---|---|---|
IActionFilter.OnActionExecuted | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnActionExecuted method. (Inherited from Controller.) | |
IActionFilter.OnActionExecuting | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnActionExecuting method. (Inherited from Controller.) | |
IAsyncController.BeginExecute | Called by ASP.NET to begin the execution of an asynchronous action method. | |
IAsyncController.EndExecute | Cancels the execution of an asynchronous action method by ASP.NET at the end of the execution of an asynchronous action method. | |
IAuthorizationFilter.OnAuthorization | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnAuthorization method. (Inherited from Controller.) | |
IController.Execute | Executes the specified request context. (Inherited from ControllerBase.) | |
IExceptionFilter.OnException | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnException method. (Inherited from Controller.) | |
IResultFilter.OnResultExecuted | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnResultExecuted method. (Inherited from Controller.) | |
IResultFilter.OnResultExecuting | This API supports the MVC infrastructure and is not intended to be used directly from your code. This method calls the OnResultExecuting method. (Inherited from Controller.) |
Top
Remarks
An asynchronous controller class name must end with "Controller". For example, a Product controller can be named ProductController but not Product or ProductCtrl.
Asynchronous controller action methods respond to requests that are sent to the controller. Asynchronous controller action methods must adhere to the following rules:
Asynchronous actions consist of a pair of action methods. The method that invokes the asynchronous process must have a name that ends with "Async". The method that is invoked when the process is finished (the completion method) must have a name that ends with ""Completed".
Action methods must be public.
Action methods cannot be static.
Action methods cannot have unbounded generic type parameters. An unbounded generic type parameter (also known as an open generic type) has an empty parameter list. For information about unbounded generic type parameters, see the section "Unbounded Type Parameters" in Constraints on Type Parameters (C# Programming Guide).
Action methods cannot be overloaded based on parameters. Action methods can be overloaded when they are disambiguated using attributes such as NonActionAttribute or HttpPostAttribute.
The following table lists the types that the completion action method for an asynchronous controller can return. The ActionAsync method can return any type, but the return type is ignored.
Return type |
Control action return |
---|---|
void or null |
The ControllerActionInvoker object returns an EmptyResult object. |
The ControllerActionInvoker object calls the ExecuteResult method on the result. |
|
Object (excluding ActionResult) |
The result is passed to a CreateActionResult, method that creates a new ContentResult object. The Content method of the ContentResult object is set to the invariant string representation of the returned object. |
Examples
A Visual Studio project with source code is available to accompany this topic: Download.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.