sintaxis net mvc cshtml asp asp.net webforms

asp.net - mvc - render partial asp net core



Consejos para evitar la gran bola de lodo con ASP.NET WebForms (6)

Comience con las páginas maestras en el día n. ° 1: es un dolor regresar a la actualización.

Aunque ASP.NET MVC parece tener todo el bombo en estos días, los WebForms todavía son bastante penetrantes. ¿Cómo mantienes la cordura de tu proyecto? Vamos a recoger algunos consejos aquí.


Con grandes proyectos, la mejor sugerencia que puedo darte es seguir un patrón de diseño común en el que todos tus desarrolladores estén bien capacitados y conscientes. Si se trata de ASP.NET, las mejores dos opciones para mí son:

o Presentador de vista de modelo ( aunque esto ahora es Controlador de supervisor y Vista pasiva ). Este es un modelo sólido que impulsa la separación entre su interfaz de usuario y su modelo comercial que todos sus desarrolladores pueden seguir sin demasiados problemas. El código resultante es mucho más comprobable y mantenible. El problema es que no se aplica y se requiere que escriba muchos códigos de soporte para implementar el modelo.

o ASP.NET MVC El problema con este es que está en la vista previa. Hablé con Tatham Oddie y me mencionaron que es muy estable y utilizable. Me gusta, impone la separación de preocupaciones y lo hace con un código extra mínimo para el desarrollador.

Creo que sea cual sea el modelo que elijas, lo más importante es tener un modelo y asegurarte de que todos tus desarrolladores puedan seguir ese modelo.


Después de lo que dijo Odd, estoy probando una versión del MVP llamada Presentación modelo, que me está resultando muy útil hasta ahora. Todavía estoy entendiéndolo y adaptándolo a mi propio uso, pero es refrescante del código que solía escribir.

Mira esto aquí: Modelo de presentación


Generalmente trato de evitarlo ... pero cuando uso WebForms, sigo estos preceptos:

  1. Mantenga limpio el HTML resultante : el hecho de que no esté codificando manualmente cada <div> no significa que el código generado deba convertirse en una pesadilla ilegible. Evitar los controles que producen un código feo puede redituar en un tiempo de depuración reducido más adelante, al hacer que los problemas sean más fáciles de ver.
  2. Minimice las dependencias externas : no le pagan para depurar el código de otras personas. Si eliges depender de componentes de terceros, obtén la fuente para no tener que perder grandes cantidades de tiempo arreglando sus errores.
  3. Evite hacer demasiado en una página : si se encuentra implementando "modos" complejos para una página determinada, considere dividirlo en varias páginas de modo único, tal vez utilizando páginas maestras para factorizar aspectos comunes.
  4. Evitar la devolución de datos : esta fue siempre una idea terrible, y no ha sido menos terrible. Los dolores de cabeza que ahorrará al no usar los controles que dependen de la devolución de datos son una buena ventaja.
  5. Evite VIEWSTATE : vea los comentarios para # 4.

Utilice el control de versiones y una estructura de carpetas para evitar que demasiados archivos estén todos en la misma carpeta. No hay nada más doloroso que esperar que Windows Explorer cargue algo porque hay más de 1000 archivos en una carpeta y tiene que cargarlos todos cuando se abre la carpeta. Una convención sobre el nombramiento de variables y métodos también es buena para tenerla de antemano, de ser posible, de modo que no exista esta mezcolanza de códigos en la que diferentes desarrolladores pongan sus toques únicos y se muestre dolorosamente.

El uso de patrones de diseño puede ser útil para organizar el código y hacer que se escale bien, por ejemplo, un patrón de estrategia puede facilitar el tiempo cuando se debe agregar un nuevo tipo de producto o dispositivo que se debe admitir. Similar para usar algún adaptador o patrones de fachada.

Por último, sepa qué estándares van a mantener sus formularios: ¿es solo para usuarios de IE o debería IE, Firefox o Safari cargar fácilmente el formulario y verse bien?


  • Cree controles de usuario web para cualquier cosa que se muestre en más de una página que no forma parte del contenido del tipo de página maestra. Ejemplo: si su aplicación muestra información del producto en 10 páginas, es mejor tener un control de usuario que se use en 10 páginas en lugar de cortar el código de la pantalla 10 veces.
  • Ponga la menor lógica de negocios en el código detrás como sea posible. El código subyacente debe diferir a la capa de su empresa para realizar el trabajo que no está directamente relacionado con poner cosas en la página y enviar datos desde la capa empresarial.
  • No reinventes la rueda. Muchos códigos subyacentes descuidados que he visto están formados por código que está haciendo cosas que el framework ya proporciona.
  • En general, evite los bloques de script en el html.
  • No haga que una página haga demasiadas cosas. Algo que he visto una y otra vez es una página que dice que tiene modos de agregar y editar. Esta bien. Sin embargo, si tiene muchos modos secundarios para agregar y editar, es mejor tener varias páginas para cada submodo con reutilización a través de controles de usuario. Realmente debe evitar ir un montón de IF anidados para determinar qué está tratando de hacer su usuario y luego mostrar las cosas correctas dependiendo de eso. Las cosas se salen de control rápidamente si su página tiene muchos estados posibles.
  • Aprenda / Grok el ciclo de vida de la página y úselo para su ventaja. Muchas páginas feas de código que he visto podrían estar más limpias si el codificador entendiera mejor el ciclo de vida de la página.