LINQ to SQL (3ª Parte – Consultando la base de datos)

El mes pasado empezé una serie de post sobre LINQ to SQL. LINQ to SQL es un framework O/RM (Object relational mapping) que viene como parte del .NET Framework 3.5, que nos permite modelar de forma sencilla bases de datos relacionales con clases de .NET. Podemos usar, por tanto, expresiones LINQ tanto para consultar a la base de datos como para actualizar/inertar/borrar datos. Continúa leyendo LINQ to SQL (3ª Parte – Consultando la base de datos)

Parche para debugear aplicaciones ASP.NET en IIS7

Los que uséis VS 2005 para debugear aplicaciones ASP.NET en IIS7 en Windows Vista podéis encontraros uno de los siguientes errores cuando pulsáis F5 para enlazar el debugger en el IDE:

  • “An authentication error ocurred while communicating with the web server”. (Ocurrió un error de autenticación mientras se comunicaba con el servidor web).
  • “Debugging failed because integrated Windows authentication is not enabled”. (Falló el debugging porque la autenticación integrada de windows no está habilitada).
  • “Authentication error occurred while communicating with the web server.  Try disabling ‘Digest authentication'”. (Ocurrió un error de autenticación mientras se comunicaba con el servidor web. Pruebe a deshabilitar ‘Digest authentication’).

Estos errores ocurren debido a la forma en que VS 2005 busca el ID del proceso IIS7 en donde se está ejecutando ASP.NET. Cuando usamos F5 para “autoenlazar” el debugger con Visual Studio le manda una petición HTTP a ASP.NET usando la autenticación de Windows para obtener los detalles del proceso. Esto funciona bien si tenéis habilitada la autenticación de windows en el servidor web, y se está usando la autenticación de Windows como método principal de autenticación en nuestra aplicación web. Sin embargo, los problemas llegan bajo ciertas circunstancias:

  1. Si tenemos habilitada la autenticación por formularios en ASP.NET y estamos ejecutando el “modo integrado” en IIS7. Esto bloquea el manejador del proceso.
  2. Si no tenemos el módulo de autenticación de Windows instalado en el servidor web (ahora es un componente opcional).
  3. Si estamos ejecutando Windows Vista Home (que no soporta el módulo de autenticación de windows).

Descarga del parche.

Para solucionar estos casos que bloquean el “autoenlazado”, hemos publicado un parche para Visual Studio 2005.  Soluciona los problemas de los que hemos hablado antes. Podéis descargarlo desde aquí. Una vez que lo instaléis, cuando pulsemos F5 en Visual Studio todo funcionará como antes.

Podeis leer más sobre este parche y sobre los errores que corrige en este artículo, y en los siguientes post aquí y aquí.

Si tenéis algún problema instalando el parche o si continuais con los mismo problemas una vez instalado, podéis contactar con el soporte de Microsoft. La llamadas a soporte son gratuitas si están relacionadas con un bug de un producto. Podeis ver los detalles sobre cómo contactar con soporte en esta página.

Cómo enlazar manualmente el debugger a un proceso.

He ayudado a varias personas con este problema ántes de que se publicase el parche. Una de las cuentas de las que me di cuenta mientras lo hacía fué que un montón de desarrolladores no se dan cuenta de las opciones disponibles cuando están debuggeando, y las diferentes formas que podemos usar Visual Studio para debugear un proceso o aplicación.

Cuando pulsamos F5 en Visual Studio (DebugStart Debugging) le estamos diciendo a Visual Studio que arranque la aplicación y que la enlaze al debugger. Una alternativa que podemos usar es debugear una aplicación que ya está siendo ejecutada en el menú DebugAttach to Process…

Cuando seleccionamos ese menú, nos muestra un cuadro de diálogo que nos mostrará los procesos en ejecución (también podemos indicar una dirección IP para debugear en una máquina remota):

Si queremos debugear una aplicación ASP.NET que se está ejecutando en IIS, aseguraos de marcar el checkbox de “Show processes in all sessions” (desde que IIS se ejecuta como un servicio de windows y como una cuenta local). Luego, buscamos en la lista el proceso w3wp.exe (es el nombre del proceso de IIS6  e IIS7).

Haciendo doble clic en cualquier proceso hará que Visual Studio enlaze el debugger a ese proceso – en este punto, todos los puntos de ruptura que hallamos definido se lanzarán y ya podremos debuggear cualquier proceso con VS2005 como si lo hubiésemos lanzado con F5. Esto funciona tanto para aplicaciones web como para aplicaciones windows, y puede ser muy útil cuando ya tenemos la aplicación en ejecución. Daros cuenta de que ya no tendréis que hacer esto si tenéis instalado el parche.

Espero que sirva.

Scott.

Traducido por: Juan María Laó Ramos. Microsoft Student Partner.

toH tlhIngan Hol DajatlhlaH ‘e’ DaneH’a’?

Nueva versión de ASP.NET AJAX Control Toolkit y videos/artículos de ASP.NET AJAX

La semana pasada el equipo de la ASP.NET AJAX Control Toolkit lanzó la Build 10618 del ASP.NET AJAX Control Toolkit. Corrige unos cuantos problemas encontrados a principios de mes, entre otros:

Intellisense en JavaScript con VS 2008

Una de las características que más le gusta a los desarrolladores web de VS 2009 es el soporte intellisense para JavaScript. También está disponible en Visual Web Developer 2008 express, y hace que el uso de JavaScript y la construcción de aplicaciones AJAX sea realmente fácil.

Aquí tenéis una pequeña lista de las nuevas características del intellisense de JavaScript. Continúa leyendo Intellisense en JavaScript con VS 2008

Soporte Multi-Targeting de VS 2008

A principios de este mes en el TechEd anunciamos el nombre oficial de Visual Studio “Orcas” – que se llamará Visual Studio 2008. También dijimos que el nombre oficial del .NET Framework “Orcas” será .NET Framework 3.5 (incluye LINQ, soporte integrado para ASP.NET AJAX, nuevos controles de datos para ASP.NET, y mucho más). Continúa leyendo Soporte Multi-Targeting de VS 2008

Creando aplicaciones Silverlight con .NET

Estoy apunto de cojer el vuelo de vuelta a Seattle tras terminar un viaje de trabajo de 10 días por Europa donde he hablado en conferencias y en eventos de grupos de usuarios en Budapest, Amsterdam y Zurich. Aunque este tipo de viajes son agotadores, creo que son una buena forma tanto de entrar en contacto con desarrolladores de todo el mundo como para poder crear nuevas presentaciones y ejemplos.

Una de las charlas que dí en este viaje era nueva: “Creando aplicaciones Silverlight con .NET”, que parece que gustó.

Charla “Creando aplicaciones Silverlight con .NET”

Intené mantener el formato y los ejemplos para esta charla, y usé un modelo con pocas transparencias explicando cada concepto de la programación con Silverlight, y luego mostré un ejemplo muy simple de cada concepto que me ayudaba a demostrar cómo funcionaba.

En la charla hablé sobre:

  • XAML
  • Usando formas y texto .
  • Uso de controles.
  • Layout (Canvas y Layout Managers).
  • Brochas.
  • Transformaciones
  • Manejando eventos y escribiendo código.
  • Construir controles personalizados de la interfaz de usuario.
  • Programar una pagina html desde un control Silverlight.
  • Manejando eventos HTML en código manejado (por ejemplo: el clic de un boton html en el cliente con C#/VB).
  • Mostrando las APIs  para Javascript
  • Usando el soporte “File Open Dialog”
  • Usando las APIs para redes HTTP.
  • Usando la API de servicios web.
  • Almacenamiento aislado para datos locales cacheados.

 En total: 83 transparencias – pero creo que son realmente útiles y explican todo paso a paso (son muy sencillas de leer – incluso si no queréis ejectuar los ejemplos en local, os recomiendo que les hechéis un vistazo). Podéis descargaros las transparencias y las demos en los siguientes links:

En el zip que os descargais tenéis una serie de instrucciones para ejecutar todos los ejemplos en vuestra propia máquina.

Respuesta rápida a preguntas frecuentes sobre .NET con Silverlight

Una de las preguntas más frecuentes que me han hecho en estas charlas ha sido: “¿Necesitamos el .NET Framework instalado para usar Silverlight?”. La respuesta es no – én el paquete que os descargais de 4.4 MB de Silverlight 1.1 hay una versión multiplataforma del .NET Framework, es decir, no necesitáis tener nada más instalado en el cliente para programar Silverlight con .NET.

La versión del framework que viene con Silverlight incluye el mismo motor del CLR (mismo recolector de basura, sistema de tipos, motor JIT) que viene con la versión completa del Framework, y un subconjunto de todos los namespaces. Podéis ver la lista de todas las clases/namespaces que se incluyen abriendo el navegador de objetos cuando creais una nueva aplicación Silverlight con Visual Studio (clic aquí para una captura de pantalla).

La gente se extraña cuando escucha que es posible tener todo esto con un paquete tan pequeño y rápido de instalar. Dejadme decir que no fue fácil.

Otras charlas y post sobre Silverlight.

Para ver una pequeña introducción de Silverlight, así como algunos ejemplos más chulos (más completos) podeis descargaros la charla y leer el post aquí.  Podéis aprender más sobre Silverlight en el resumen que hice aquí. Y podéis verme construir una aplicación Silverlight con .NET en este video.

En la charla tomé prestadas algunas transparencias de otras charlas sobre Silverlight y WPF/E que otros han hecho y se las he pasado. (Aunque casi todos los ejemplos que he hecho en la última charla son nuevas). En concreto, mi charla sobre WPF/E de principios de año, de las charlas de Jamie Cool y Nick Kramer en el Mix, y la charla de Stefan Schacow en el MIX: Ampliando el modelo de programación web con Silverlight. Podeis ver las charlas de Jamie, Nick y Stefan online (junto a todas las charlas del MIX) aquí.

Espero que sirva.

Scott.

Traducido por: Juan María Laó Ramos. Microsoft Student Partner.

toH tlhIngan Hol DajatlhlaH ‘e’ DaneH’a’?

Trucos: Creación de programas de instalación para ASP.NET con VS 2005

Escenario

Habéis echo una aplicación web ASP.NET con Visual Studio 2005, y queréis permitir a vuestros clientes que puedan instalar y desplegarla en sus servidores a través de un programa de instalación.

Concretamente, quereis crear un programa de instalación estándar de Windows que cree y configure la aplicación en el IIS, que copie todos los archivos necesarios para la aplicación en el servidor, y comprobar que ASP.NET 2.0 está correctamente configurado para que se ejecute la aplicación. También queréis que el programa de instalación le pregunte al cliente por la localización de la base de datos que usará la aplicación, y que actualize automáticamente el archivo web.config con las cadenas de conexión a la base de datos que el cliente proponga. Continúa leyendo Trucos: Creación de programas de instalación para ASP.NET con VS 2005

Detalles de los eventos de Zurich, California y Fénix

Estoy justo en la mitad de un tour de charlas este mes. En el último post no puse ni la hora ni el lugar concreto de los eventos. Aquí tenéis algunos detalles:

Zurich, 18 de Junio

Además de hacer el acto de inauguración y algunas charlas de Silverlight en el Remix de Zurich, también participaré junto al grupo de usuarios de .NET DotMugs.ch en la mañana del 18 de Junio sobre ASP.NET y Visual Studio “Orcas”

Podeis apuntaros a esta charla del grupo de usuarios aquí.

California, 22 de Junio

Daré la apertura en el Remix el próximo Viernes. Podeis ver los detalles del evento y apuntaros aquí

Fenix, Arizona el 27 de Junio

Participaré en un evento especial de todo el día junto al grupo de usuarios de .NET de Arizona el 27 de Junio. Hablaremos sobre ASP.NET y Visual Studio “Orcas”, y veremos una introducción a Silverlight.

Stefan Schackow, es uno de los técnicos que dirigen al equipo de ASP.NET y escribió el libro ASP.NET 2.0 Security, Membership and Role Managment que llevo recomendando en mi blog desde hace tiempo, también estará con nosotros en el evento.

Podeis apuntaros al evento de Fénix aquí

Espero que sirva.

Scott.

Traducido por: Juan María Laó Ramos. Microsoft Student Partner

Nueva Release del ASP.NET AJAX Control Tookit

Ayer el equipo de ASP.NET AJAX Control Tookit publicó una nueva versión. Podéis descargarla de la web http://ajax.asp.net, y ejecutar los ejemplos en la página de ejemplos.

El ASP.NET AJAX Control Toolkit es una descarga libre y contiene más de 40 controles AJAX que funcionan justo encima del núcleo de ASP.NET AJAX 1.0. Además de tener a algún desarrollador de Microsoft trabajando en el, el proyecto tiene a más de 15 contribuyendo añadiendo muchas capacidades y controles. Continúa leyendo Nueva Release del ASP.NET AJAX Control Tookit

Mis "Paseos con Silverlight" en el TechEd

El Lunes di una charla que llamé “Un paseo sobre Silverlight” en el TechEd en Orlando. Podéis descargaros la presentación de la charla aquí. (aviso: debido a las imágenes, la descarga es de 12 Mb). También podéis aprender más sobre Silverlight en este post.

Una de las cosas que hice durante la sesión fue mostrar unas cuantas aplicaciones hechas con Silverlight. Más abajo tenéis los enlaces para ver algunas de ellas en la web (nota: instalad Silverlight 1.1 Alpha para poder verlas). Continúa leyendo Mis "Paseos con Silverlight" en el TechEd