Interesante herramienta para Visual Studio


Una de las herramientas que he instalado últimamente y he encontrado muy interesante es RockScroll, desarrollada por Rocky Downs. Esta herramienta básicamente extiende la barra de Scroll de Visual Studio para mostrar una barra indicadora de la sintaxis del código.


 


Esto resulta muy útil cuando se tienen archivos bastante grandes como por ejemplo este archivo de código generado por Visual Studio cuando se crea una clase Linq to SQL con todas las tablas de la base de datos de ejemplo Northwind. Estoy explorando la línea 2450 del código, pero puedo fácilmente saber en qué posición del archivo de código me encuentro y me puedo mover fácilmente a otra área del código usando la barra del RockScroll.


Esta barra puede ser descargada desde aquí.


Saludos!


Carlos Figueroa – Quito, Ecuador

Visual Studio 2008 y .NET Framework 3.5 Service Pack 1 Beta están disponibles


 


A partir de hoy (Lunes 12 de Mayo) está disponible para la descarga la versión beta de lo que será el Service Pack 1 del .NET Framework y VS 2008. Esta actualización contiene soluciones a las anomalías reportadas y mejoras al rendimiento sobre la versión liberada en Noviembre del año pasado. También contiene algunas características adicionales y mejoras que para contruir aplicaciones .NET.


Se planea liberar la versión final del .NET 3.5 SP1 y VS 2008 SP1 a finales de Septiembre del presente año como actualizaciones gratuitas.


Más información sobre la instalación y descripción de las nuevas mejoras se pueden encontrar aquí. El equipo de desarrollo de Visual Web Developer ha publicado un post sobre este tema aquí. Brad Adams (miembro fundador del equipo que desarrolló el Common Language Runtime y el .NET Framework) ha escrito sobre este tema aquí. Finalmente, .NET Rocks! el show de Internet radio para desarrolladores .NET tiene un podcast de 72 minutos con Brad Adams y Omar Khan aquí.


Descargas:


Visual Studio 2008 Service Pack 1 Beta


.NET Framework 3.5 Service Pack 1 Beta


Visual Studio 2008 Express Editions with Service Pack 1 Beta


Visual Studio Team System 2008 Team Foundation Server Service Pack 1


Saludos!


Carlos Figueroa – Quito, Ecuador

Implementando Cross-Page Posting en Aplicaciones Web


Una de las características que los desarrolladores de ASP.NET 1.x necesitábamos en el ambiente de desarrollo era que cuando se navegaba de una página a la siguiente; en la siguiente página se pudiese recuperar los valores de la página y de los controles que se encuentran en ella. Esto es posible en ASP.NET 2.0 y 3.5, y es realmente un proceso muy simple.


Para demostrar esto, primero crear una página llamada Page1.aspx simple como esta:



Aquí se puede identificar claramente un objeto Textbox para capturar el nombre, un objeto Calendar para capturar la fecha de vuelo, un objeto Button para postear la página a sí misma (Page1.aspx), un objeto Button para postear la página hacia otra página distinta (Page2.aspx) y un objeto Label para mostrar la información cuando la página es posteada a sí misma.


Es importante notar que el objeto Button2 tiene un atributo llamado PostBackUrl cuyo valor es la página hacia la cual se va a postear cuando este botón sea presionado.


Este código debe ser agregado a la página Page1.aspx para implementar el comportamiento del objeto Button1 cuando es presionado:



En este momento es posible correr la aplicación y ver lo que hace el primer botón:



Este es el comportamiento tradicional, cualquier página creada en ASP.NET 1.0/1.1 simplemente era posteada contra sí misma, y se podía manejar los valores de los controles dentro de la instancia de la página. El objeto Button2 puede hacer visibles los valores de la página y los controles de Page1.aspx dentro de Page2.aspx; de tal forma de Page2.aspx puede acceder a estos valores desde cualquier parte. Esta es la forma en la cual tiene que estar implementada la página Page2.aspx:



Existen dos formas de recuperar los valores de la página anterior. La primera es usando el método FindControl de la propiedad PreviousPage usando el texto del nombre del control de la página anterior como parámetro, haciendo el casting correspondiente para asignarlo a una variable local. De esta forma nos podemos olvidar de la página anterior y trabajar con la variable local como siempre. Pero como mencioné anteriormente, existe otra forma de hacerlo…


Para hacer esto es necesario exponer los controles de la página anterior (Page1.aspx) como propiedades públicas de esta forma:


 


Ahora es posible referirse a estas propiedades desde la página Page2.aspx. Para hacer esto es importante incluir la directiva PreviousPageType (Línea 2) y el valor del atributo VirtualPath debe ser el nombre de la página anterior. Una vez hecho esto se puede acceder a los controles de la página anterior desde la propiedad PreviousPage:



Cuando ejecutamos esta aplicación seleccionando “Submit page to Page2.aspx”, el resultado será el siguiente:



Finalmente, que pasaría si alguien accede a la página Page2.aspx sin antes haber pasado por la página Page1.aspx?. Pues, es fácil determinar si una petición está llegando desde Page1.aspx o si alguien accedió a la página Page2.aspx directamente. Se puede trabajar sobre el objeto Request a través del uso de la propiedad IsCrossPagePostBack la cual es similar a la propiedad IsPostBack de ASP.NET 1.x. La propiedad IsCrossPagePostBack permite verificar si el request viene desde Page1.aspx


Saludos!


Carlos Figueroa – Quito, Ecuador

Cómo empezar a trabajar con las extensiones de ASP.NET



Este año se han agregado nuevas características a ASP.NET y ADO.NET que incrementan el poder del .NET Framework 3.5. Las mejoras están enfocadas a:




  1. Aumentar la productividad de las aplicaciones que trabajan con datos a través del uso de .NET Entity Framework, ADO.NET Data Services, ASP.NET MVC, y ASP.NET Dynamic Data.


  2. Soporte de TDD (Test Driven Development) usando el nuevo y extensible MVC Framework.


  3. Mejora de la experiencia de usuario a través del soporte de historia en AJAX y nuevos controles ASP.NET para Silverlight.

Controles ASP.NET para Silverlight


Ahora se puede aprovechar Microsoft Silverlight dentro de las aplicaciones Web usando el mismo modelo de los controles de servidor de ASP.NET. El control de servidor MediaPlayer permite integrar fuentes multimedia como audio (WMA) y video (WMV) y usar las máscaras que vienen integrados en Media Player. El control de servidor Silverlight permite agregar contenido XAML a las páginas ASP.NET, usando un tipo personalizado de JavaScript del paquete XAP del código administrado de Silverlight 2.


ASP.NET MVC


ASP.NET MVC provee un framework que permite implementar fácilmente el patrón modelo – vista – controlador (MVC) para las aplicaciones Web. Este patrón permite separar a las aplicaciones en componentes desacoplados de diseño de aplicación, lógica de procesamiento y presentación. ASP.NET MVC también facilita la aplicación de TDD (Test Driven Development).


ASP.NET Dynamic Data


ASP.NET Dynamic Data ayuda a los desarrolladores a construir rápidamente una aplicación de datos personalizable. Provee un framework preelaborado que permite la implementación de este tipo de aplicaciones sin necesidad de escribir código, y además es extensible usando el modelo de programación tradicional de ASP.NET.


ADO.NET Entity Framework


ADO.NET Entity Framework es un nuevo framework de modelamiento que permite a los desarrolladores definir un modelo conceptual a partir de un esquema de base de datos que está alineado a una vista del mundo real de la información. Uno de sus beneficios es la facilidad de entendimiento y de mantenimiento del código de la aplicación ya que está preparado para los cambios en el esquema del modelo de datos que la soporta.


ADO.NET Data Services


ADO.NET Data Services provee nuevos servicios para buscar, manipular y distribuir datos a través de la web usando URIs. Uno de sus beneficios es la facilidad y flexibilidad para acceder a los datos a través de la Web, además de separar la presentación del código de acceso a datos.


ASP.NET Ajax


Entre las nuevas mejoras a ASP.NET AJAX está el soporte para manejar la historia del navegador (Back button).


Suena interesante… entonces, cómo podemos empezar a trabajar con esto ?


Descargar Silverlight Tools Beta 1 for Visual Studio 2008 que incluye el nuevo control ASP.NET MediaPlayer y los demás controles de servidor Silverlight.


Descargar ASP.NET MVC Preview 2 Release que contiene la última versión de ASP.NET MVC Framework y el soporte de herramientas para Visual Studio.


Descargar ASP.NET 3.5 Extensions Preview (December 2007) Release que incluye el ambiente de ejecución de ADO.NET Entity Framework, ADO.NET Data Services, ASP.NET Dynamic Data, y mejoras a ASP.NET AJAX.


Nota: Cuando se descarga ASP.NET 3.5 Extensions Preview (December 2007) este contiene versiones antiguas de los controles ASP.NET para Silverlight y soporte de herramientas para ASP.NET MVC. Aunque Microsoft recomienda desinstalar todos las versiones anteriores antes de usar el nuevo ASP.NET MVC Preview 2 para Visual Studio 2008, no es para nada peligroso tener las dos versiones instaladas. Sólo hay que asegurarse de usar las nuevas plantillas ASP.NET MVC Web Application en lugar de las plantillas instaladas de las versiones anteriores.


Ok… Descarga e instalación listos… Dónde se puede encontrar información acerca de cómo usarlo ?


estas son las tres mejores fuentes de información de las que conozco hasta ahora:


Quickstarts para aprender más sobre las nuevas características agregadas a ASP.NET y ADO.NET


Videos que cubren las nuevas características agregadas a ASP.NET y ADO.NET


Kit de entrenamiento .NET Framework 3.5 el cual contiene Laboratorios, Demos y PPTs


Finalmente, dónde se puede hacer preguntas y debatir sobre estos asuntos ?


Foro de ASP.NET controls for Silverlight. Preguntas y debates acerca de los nuevos controles ASP.NET para Silverlight.


Foro de ASP.NET MVC. Preguntas y debates acerca de ASP.NET MVC.


Foro de ASP.NET Dynamic Data. Preguntas y debates acerca de ASP.NET Dynamic Data.


Foro de ADO.NET Entity Framework. Preguntas y debates acerca de ADO.NET Entity Framework.


Foro de ADO.NET Data Services. Preguntas y debates acerca de ADO.NET Data Services.


Foro de ASP.NET AJAX UI. Preguntas y debates acerca de ASP.NET AJAX.


Foro general de Extensiones de ASP.NET 3.5. Problemas de configuración y preguntas generales sobre ASP.NET Extensions Preview (December 2007) release.


Saludos!


Carlos Figueroa – Quito, Ecuador

Aún es tiempo para comprar buenos libros de ASP.NET (con descuento)



El martes en la mañana Scott Guthrie anunció que este libro estaba a sólo $16; cuando normalmente cuesta $54.99. Hoy (Viernes 9 de Mayo) este libro está a $27.49, y aunque yo lo compré hace ya más de un mes cuando estaba a $35, igual vale la pena hacer la inversión. Son 1673 páginas con lo mejor de la mejor tecnología para desarrollo de aplicaciones Web que existe hoy en día ASP.NET 3.5, con ejemplos en los dos lenguajes C# y VB (siempre he preferido C#).


Otro punto que es muy notable si revisan el ranking de ventas de Amazon.com… este libro está en el puesto 47 de todos los tópicos (y el martes en la mañana estaba en el puesto 5), un excelente ranking sobre todo porque se trata de un libro de tecnología !!!


En mi opinión personal, lo compré y realmente lo he disfrutado. Un excelente libro para ponerse al día con los nuevos conceptos y características sobre ASP.NET 3.5 y un excelente libro de referencia. Lo recomiendo.


Nota del autor de este blog: No soy empleado de Microsoft, empleado de Wrox, ni familiar de ninguno de los autores (aunque conocí personalmente a Scott Hanselman en mi viaje al campus de Microsoft hace un mes), sólo soy un fan de la tecnología.


Saludos!


Carlos Figueroa – Quito, Ecuador

Scott Guthrie es la 28ava persona más influyente en IT (eWeek)



Leí esto en el blog de Joe Stagner el lunes en la mañana. El reporte de eWeek dice que ellos “buscaron a las personas que no solamente tienen historia tangible de éxitos en tecnología, sino que también tienen alto nivel de influencia y habilidad para crear grandes cambios de alto nivel de compromiso en el desarrollo de tecnologías emergentes”.


A finales de 1998, Scott Guthrie y Mark Anders crearon lo que ellos llamaron XPS (una abreviación sin significado) – una nueva forma de crear aplicaciones web usando el paradigma de orientación a objetos en lugar de la forma procedural de ASP 3.0. Ellos mostraron su idea a diferentes grupos dentro de Microsoft y fueron bien recibidos. En el verano del año 2000, la versión beta de lo que en ese entonces fue llamado ASP+ fue mostrado en el evento PDC (Professional Developers Conference). Los participantes del evento inmediatamente empezaron a trabajar con esta nueva tecnología. Cuando esta plataforma estuvo oficialmente disponible (junto con la versión final de .NET Framework 1.0), fue renombrada ASP.NET – recibiendo el sufijo .NET que la mayoría de los nuevos productos de Microsoft recibían en esa época.


Hoy en día, Scott es VicePresidente dentro de la División de Desarrolladores de Microsoft. El lidera los equipos de desarrollo que construyen ASP.NET, Common Language Runtime (CLR), Windows Presentation Foundation (WPF), Silverlight, Windows Forms, Internet Information Services 7.0, Commerce Server, .NET Compact Framework, Visual Web Developer y Visual Studio Web & Client Development Tools. Scott es mejor conocido por su trabajo en ASP.NET, el cual desarrolló junto con su colega Marc Anders.


He decidido comenzar este blog con este post principalmente porque la tecnología que más me gusta es ASP.NET. No es solamente la tecnología que prefiero para implementar soluciones de negocio basadas en Web, sino también mi pasatiempo. Es muy gratificante saber que esta ola de innovación tecnológica nunca se detiene porque siempre aparece algo nuevo, y es emocionante el reto de llevar toda esa innovación al mundo real todos los días. Listo, he empezado a escribir mi blog… espero que esto tampoco se detenga.


Saludos!


Carlos Figueroa – Quito, Ecuador