Leer los tres artículos, se entiende por el principio básico de trabajo de ASP.NET MVC Framework Core

" 200 líneas de código, siete objetos - para que pueda entender la naturaleza del marco ASP.NET Core de " tantos lectores tienen un conocimiento profundo de la canalización de ASP.NET Core, Core saben ASP.NET flujo del proceso marco para cada solicitud. Durante un largo periodo de tiempo, hay muchos carta privada a mí: ¿Puede analizar el marco MVC de la misma manera. Es cierto marco MVC es en realidad muy compleja, por lo que estamos todavía de una manera drástica "corte" similares "una gran cantidad de pequeños detalles", usando una versión mini del marco de simulación se mostrará la parte central de la verdadera ASP.NET MVC Core. Y las versiones Mini marcos de ASP.NET Core, la versión mini del marco ASP.NET MVC Core utiliza el mismo diseño coherente marco real, y la misma se pueden ejecutar directamente. Con el fin de mejorar las salvaguardias, puse estos dos simulación marco github sucesivamente.

ASP.NET Core Mini: https://github.com/jiangjinnan/AspNetCoreMini

ASP.NET MVC Core Mini: https://github.com/jiangjinnan/AspNetCoreMvcMini

[Parte I] integración de enrutamiento

MVC marco construido sobre todo el middleware de ruta ( "ASP.NET Core 3 Marco secreto" ha dedicado el siguiente volumen de enrutamiento de middleware, este libro está participando en Jingdong completos 100-50 actividades, el 50% de descuento en el tren antes que los estudiantes pueden faltar a) sucesivamente. Ya sea frente Controlador Modelo-Vista-Controlador modelo de programación, o la maquinilla de afeitar Páginas modelo de programación orientado a la página, cada solicitud se dirige son una determinada acción, por lo que sólo es necesario MVC cada cuadro en una acción de paquetes de enrutamiento de punto final (RouteEndpoint ), y por EndpointDataSource middleware personalizado puede ser registrado en el enrutamiento. Benpian foco en la integración del marco MVC y middleware de enrutamiento, por lo que hicieron se definen los mayores métodos de simplificación de acción: métodos de acción son los métodos no paramétricos, por lo que no tenemos en cuenta la cuestión de los parámetros de unión; el método de acción de retorno tarea o los valores son nulos, todas las solicitudes de procesamiento de tareas se implementan en el proceso. Leer más ...

público  de clase FooBarController: Controller 
{ 
    público  vacío Foo ();
    pública de tareas BarAsync ();
    pública ValueTask BazAsync (); 
}

[Novella] respuesta de solicitud

Nosotros " [Parte I]: la integración de enrutamiento " definirá el tipo de Acción controlador método se reduce a sólo devuelven tareas o método de vacío, y para hacer que el método en sí mismo para completar, incluyendo al ser apropiado para todas las solicitudes de procesamiento de tareas a la solicitud, pero cierto framework MVC sin ningún tipo de restricciones sobre el tipo de retorno del método de acción. En general, preferimos el tipo de retorno del método definido Acción IActionResult, Tarea <IActionResult> o ValueTask <IActionResult>. Si el método devuelve Action otros tipos de objetos, el objeto finalmente se convertirá en objeto IActionResult. A lo largo del framework MVC para la solicitud de flujo de proceso, IActionResult es principalmente responsable de responder a las solicitudes de trabajo. En este artículo, vamos a establecer un marco de simulación para una mejora adicional de lo anterior, el contacto con el tipo de retorno del método de restricción de Acción. Leer más ...

público  de clase FooBarController: Controller 
{ 
    público IActionResult Foo ();
    pública de tareas <IActionResult> BarAsync ();   
    pública ValueTask <IActionResult> BazAsync ();
    pública Foobar Qux ();
    pública de tareas <Foobar> QuuxAsync ();
    pública ValueTask <Foobar> CorgeAsync (); 
}

[Siguiente] enlace de parámetros

marco de simulación acción supone hasta el momento no hay parámetros del método, sabemos que el marco de trabajo MVC no tiene restricciones sobre los métodos parámetro de acción, que pueden contener cualquier número y tipo de parámetros. Una vez que la eliminación de hipótesis de "cero-argumento", el método de aplicación de la Acción no llega a ser tan sencillo, ya que antes de ejecutar las necesidades método de destino para unir todos los parámetros. marco MVC utiliza un mecanismo llamado "modelo de unión (Encuadernación Model)" de obligar a la salida de destino parámetro métodos de acción, que pueden considerarse como una solicitud de MVC proceso de aplicación marco el aspecto más complejo. Este artículo hecho progresos para completar el marco existente, mediante la implementación del modelo de límites de exposición para los parámetros del método de acción vinculante. Leer más ...

público  de clase FooBarController: Controller 
{ 
    público IActionResult Foo (Foo foo, bar baz);
    pública de tareas <IActionResult> BarAsync (Foo Foo, Bar Baz);   
    pública ValueTask <IActionResult> BazAsync (Foo Foo, Bar Baz);
    pública Foobar Qux (Foo Foo, Bar Baz);
    pública de tareas <Foobar> QuuxAsync (Foo Foo, Bar Baz);
    pública ValueTask <Foobar> CorgeAsync (Foo Foo, Bar Baz); 
}

Supongo que te gusta

Origin www.cnblogs.com/artech/p/asp-net-core-mvc-mini.html
Recomendado
Clasificación