June 2007 - Artículos

¿Es necesario instalar Microsoft AJAX Extension en mi servidor de producción?

Es una pregunta muy frecuente que me encuentro en foros y NewsGroup. La respuesta es sí y creo que el porqué (sino estoy equivocado) es esta nota que encuentras en la documentación de ASP.NET AJAX sobre el proceso de instalación: The installation process installs the ASP.NET AJAX assembly (System.Web.Extensions.dll) in the global assembly cache (GAC). Do not include the assembly in the Bin folder of your AJAX-enabled Web site. http://ajax.asp.net/docs/InstallingASPNETAJAX.aspx Es lógico no, si tira...

We Love... Web

Ayer tuve la suerte de asistir al evento que ilitia Technologies SRL preparó en las instalaciones de Microsoft Ibérica. El formato era muy novedoso y la verdad es que me gusto bastante. Era al primer evento al que asistía en el que no estas escuchando hablar a una persona/as durante 5 horas en las que alguna de las veces cierras los ojos o pegas una cabezada que otra, sino que pude participar con mi portátil realizando Hand on Labs con una máquina virtual que habían preparado. La agenda fue la siguiente...

Una anécdota: Los lenguajes pedaleros

La verdad es que en el cliente donde estoy (no diré su nombre por respeto) cada día que paso alucino más y es que como dice mi novia: Lo que Dios no dá, Salamanca no lo enseña... Y porqué digo esto pues porqué cada día oigo decir algún Jefe de Poyecto (sí si, habéis leido bien, como la Poyeya pero en informática) barbaridades y claro, es que es Jefe de Poyecto porque cuando se hizo el sorteo de puestos le tocó la bola, o quizás porque es un pelota y si a eso le sumas que sólo existen 3 categorías...
Publicado por Luis Ruiz Pavón | 6 comment(s)
Archivado en:

ASP.NET: Almacenamiento del estado de la sesión (Session State Mode)

El otro día un compañero me comentó: Luis, estamos desarrollando una aplicación Web y como Session State Mode estamos utilizando InProc, pero no sabemos sí esta va a ser la configuración final. ¿Que debemos tener en cuenta en el desarrollo para que esta modificación no nos afecte? A lo que le respondí: ¿Sabes cual es la diferencia entre los distintos Session State Mode? El respondió: No muy bien, te importaría explicarmelo. ASP.NET soporta 5 tipos diferentes para el almacenamiento de la sesión: InProc...
Publicado por Luis Ruiz Pavón | 12 comment(s)
Archivado en: ,,

Mejoras en ADO.NET 2.0: El método DataTable.Load

Para los que no conocéis este método aún, os diré que es una de las nuevas mejoras de ADO.NET 2.0 que mas me gusta. En versiones anteriores de ADO.NET , para devolver un DataTable , teníamos que hacer todo aquella parafernalia de la conexión, comando, dataadapter, dataset... y el DataSet está pansado como un conjunto de resultados, entones tener que cargarlo con una sola tabla para tener que estar accediendo a su colección de tablas para devolver la tabla en concreto, no tiene mucho sentido desde...

Controlar el tamaño de subida de los ficheros al servidor en ASP.NET

Esta pregunta es muy frecuente en las NewsGroup de ASP.NET. La solución es sencilla, basta con añadir la siguiente instrucción a nuestro Web.Config: 1: < configuration > 2: < system.web > 3: < httpRuntime maxRequestLength ="Tamaño en kilobytes" /> 4: </ system.web > 5: </ configuration > Por defecto el tamaño de subida está estipulado en 4 MB(4096 KB). Un aclaración que me gustaría hacer, es que hay gente que quiere permitir la subida de archivos demasiado grandes al...
Publicado por Luis Ruiz Pavón | 4 comment(s)
Archivado en: ,,,

ASP.NET 2.0 CreateUserWizard(II): Enviar un correo personalizado cuando un usuario se crea una nueva cuenta en nuestro sitio web

En mi otro artículo hablaba de como enviar un correo a un usuario que se crea una nueva cuenta en nuestro sitio web, pero, ¿Y si además necesitamos personalizar ese correo?, pues no problem, capturando un simple evento del control CreateUserWizard llamado SendingMail y conociendo un poquito la clase MailMessage esta chupao. Y dirás: ¿Porqué la clase MailMessage ? Pues la respuesta es que el segundo argumento que recibe este evento es del tipo MailMessageEventArgs, que contiene una propiedad del tipo...

ASP.NET 2.0 CreateUserWizard: Enviar un correo cuando un usuario se crea una nueva cuenta en nuestro sitio web

Un título demasiado largo para lo poco que se puede contar, pero eso sí, puede evitar a más de uno un quebradero de cabeza. Cuando necesitamos que en nuestro sitio web, una vez que el usuario se ha creado una nueva cuenta se le envie un correo de esos de bienvenida y tal, necesitamos seguir estos pasos: Añadir una entrada válida de smtp a nuestro Web.Config : 1: < system.net > 2: < mailSettings > 3: < smtp > 4: < network host ="miserver" password ="" userName ="" /> 5: <...

Crear una columna calculada en un DataTable

A veces necesitamos crear una columna calculada en base a otras que ya disponemos como por ejemplo un total, un %... Para ello sólo debemos agregar una nueva columna a nuestro DataTable, especificarle el Nombre y el Tipo de dato y asignar a la propiedad Expression del objeto DataColumn la fórmula que queremos calcular. Por ejemplo, vamos a crear una columna llamada Total sobre un DataTable que contendrá la información de la tabla [Order Details] de la base de datos NorthWind , en la que vamos a calcular...
Publicado por Luis Ruiz Pavón | 5 comment(s)
Archivado en:

Sobre el evento de ayer: Kill the Experts...with AJAX!

Ayer en las oficinas de Microsoft Ibérica tuvo lugar el evento del Grupo de Usuarios de Madrid Kill The Experts... with AJAX! y la verdad es que me quedé bastante satisfecho con el mismo (como en todos a los que puedo asisitir). La cosa empezó como el capítulo de House en el que monta la pizarrita para ver quien gana, si el o Dios, en este caso no se contó con House pero si con 2 peasos de crases Miguel Jimenez y David Salgado y Dios que no era un dios normal, era %Dios% y al final acabó palmando...

Comprobar que todos los campos de un FormView están informados.

Con la llegada de los Validadores de ASP.NET, los desarrolladores nos confiamos y dejamos de lado la validación de los datos en el servidor y esto no es una buena practica, puesto que en un formulario donde todos los datos son obligatorios, puede ser que por algún motivo vengan vacíos y nos den de vez en cuando algún disgusto, aunque es verdad que una doble validación cliente-servidor implica mas tiempo de proceso y por consiguiente menos rendimiento, pero aumenta la seguridad tan importante hoy...
Publicado por Luis Ruiz Pavón | 2 comment(s)
Archivado en: ,,

"Para hacer el Windows Vista contratamos a Antropólogos"

Pues sí señores no es broma, son algunas de las declaraciones de la Presidenta de Microsoft Ibérica, Rosa María García en la entrevista que concedíó al diário ADN y para los que no habéis leido la entrevista os dejo el enlace, página 15: http://www.diarioadn.com/media/0000028500/0000028543.pdf Salu2
Publicado por Luis Ruiz Pavón | 3 comment(s)
Archivado en: ,,

HotFix disponible para solucionar el problema de los Validadores de ASP.NET con UpdatePanel

Hace unos días Sergio hacía en su blog referencia a este problema que ocurre cuando utilizamos validadores en ASP.NET dentro de un UpdatePanel, bueno pues ya hay disponible un HotFix para solucionarlo ya que antes se proponía un parche temporal: http://weblogs.asp.net/scottgu/archive/2007/01/25/links-to-asp-net-ajax-1-0-resources-and-answers-to-some-common-questions.aspx El enlace para descarga: https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=6106&wa=wsignin1...
Publicado por Luis Ruiz Pavón | con no comments

Crear un sitio web multiidioma (II)

En mi anterior artículo estabamos hablando sobre los tipos de recursos existentes y ya vimos los recursos locales. En esta ocasión vamos a ver los recursos globales: Recursos Globales: Pueden ser accedidos desde cualquier página o vía código de nuestro sitio web. Deberíamos echar mano de esta clase de recursos cuando tenemos varias páginas que necesitan acceder a un mismo recurso. Los ficheros de recursos globales se almacenan en la carpeta App_GlobalResources y tienen la misma nomenclatura que los...

Crear un sitio web multiidioma (I)

En algunas ocasiones necesitamos que nuestras aplicaciones soporten varios idiomas y al principio nos puede parecer un trabajo tedioso y complicado, pero con ASP.NET es un trabajo sencillo y rápido. Para ello ASP.NET utiliza archivos de recursos (resx), que no son más que ficheros XML que contienen los textos en diferentes idiomas para los controles web. Existe 2 tipos de recuros: Locales y Globales Recursos Locales: Son específicos para una página web en concreto y deben ser usados para suministrar...

Oracle Data Provider for .NET: New Oracle Data Access Components 11.1.0.5.10 Beta Features

En el proyecto en el que actualmente me encuentro, estoy desarrollando una aplicación con ASP.NET 2.0 y como gestor de base de datos Oracle. Una de mis inquietudes era como se iba a implementar el tema de los Providers y mira por donde me encuentro en la página de Oracle con esto: Oracle Providers for ASP.NET Features Membership Provider: Stores and retrieves registered user information in the Oracle database Role Provider: Stores and retrieves user role information in the Oracle database Site Map...
Publicado por Luis Ruiz Pavón | 2 comment(s)
Archivado en: ,,

ASP.NET: Error -> Acceso denegado: *.dll

Seguro que a más de uno y al que no suerte tiene, le ha aparecido este error cuando acaba de realizar una modificación en una aplicación Web y la sube a producción y alguien realiza la primera petición: Server Error in '/MyWebApp' Application Configuration Error Description : An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message : Access...
Publicado por Luis Ruiz Pavón | 5 comment(s)
Archivado en: ,,