Organizando el registro de los controles personalizados en ASP:NET.

Buenas a todos.

Este post es mas con un tip de ayuda para organizar el registro de los controles personalizados, para que se puedan usar en toda nuestra aplicación web y no tener que hacerlo pagina, por pagina.

Supongamos que vamos a usar la librería de AjaxControlToolkit para extender las capacidades o usar funcionalidades nuevas. Ya todos saben como usarlo y donde encontrarla. Pero si no, la encuentran aquí. http://ajaxcontroltoolkit.codeplex.com/

Ahora bien. Tenemos nuestro control y lo agregamos a nuestra pagina.

image

image

Ahora por cada pagina que necesitemos estos controles tenemos que colocar esa instrucción para que funcione.

Para no tener esto en cada pagina lo que hacemos es configurarlo en el archivo de configuración para que en toda la aplicación funcione el tag correspondiente.image

image

Y con este tendremos el tag del control accesible desde cualquier parte de la aplicación, sin tener que registrar el control, pagina por pagina.

Buenos espero que les haya gustado y servido.

Saludos. Romny

Migrar BD Sql Server Compact a Sql Server Express [WebMatrix]

Hola a Todos.

Esta es la situación.

Estaba trabajando un proyecto web, usando una bd en SQL Server Compact, para probar lo que traía, ya que realmente nunca la había usado y era la ocasión.

Echas las respectivas pruebas, se me dio por migrar esa bd a Sql Server y sorpresa, Visual Studio no trae nada parecido para esto.

image

Buscando no encontré una forma fácil de hacer esto. Hasta que me acorde que con WebMatrix se puede hacer esto.

Lo primero Abrir WebMatrix y escoger la opción “Sitio a partir de carpeta.”

image

Buscamos donde este nuestro proyecto. Abierto el sitio, vamos a “Base de Datos”

image

Luego escogemos la opción “Migrar”

image

Ya podemos revisar en nuestra bd de Sql Server

image

Como pueden observar, es una fácil de migrar nuestras bd echas en Sql Server Compact

Espero que les sirva de utilidad.

Romny

DevFC.exe stopped working “Windows Azure SDK 1.5 y VMWare Workstation 8”

Hola a todos.

Me gusta trabajar con Windows Azure y de echo estoy en un diplomado aprendiendo nuevas cosas. Pero también estoy probando Windows 8 como lo comente en este post, en ese entonces lo estaba probando en virtual box ya que tenia VMWare Workstation 7 y en este no funcionaba. Así que instale VMWare Workstation 8, y todo sin problemas.

El problema vino cuando intente compilar y probar una solución echa con el sdk de Windows Azure, de un momento a otro, se demoraba en lanzar el computer emulater, se cerraba el proceso DecFC.exe. 

image

Así que probé a realizar lo siguiente.

  • Reiniciar Visual Studio #Fail
  • Reiniciar la maquina #Fail
  • Reinstalar todos los componentes de Windows Auzure #Fail

Revisando este Thread pude comprobar varias cosas.

Parece ser que “vmware-hostd.exe” y el computer emulater usan algo que hace que no puedan coexistir. La opción fácil es para el servicio correspondiente.

image

Haciendo esto, ya podemos trabar normalmente con Windows Azure.

Saludos.

Romny

Controles de Validación en ASP.NET [Parte I]

Hola a todos.

Siguiendo con el tema de los controles de validación, revisar post previo.

Seguiremos comentando sobre los demás controles.

Este control Compara el valor especificado por el usuario en un control de entrada con el valor especificado en otro control de entrada o con un valor constante. Fácil no. Este control usar la propiedad ControlToCompare donde se especificará el control que se comparará con el control asignado por la propiedad ControlToValidate además usa la propiedad Operator para realizar las operaciones según como corresponda. Los valores que pueden tomar son:

  • Equal

  • NotEqual

  • GreaterThan

  • GreaterThanEqual

  • LessThan

  • LessThanEqual

  • DataTypeCheck

Supongamos que vamos a validar que la edad a diligenciar debe ser mayor que cero. el código seria así.

   1: <asp:Textbox id="txtEdad" runat="server"></asp:Textbox>

   2:   

   3:      <asp:CompareValidator id="cfvEdad" runat="server"

   4:        ForeColor="Red"

   5:        ControlToValidate="txtEdad"

   6:        ValueToCompare="0"

   7:        Type="Integer"

   8:        ErrorMessage="Por favor, introduzca un número entero mayor a cero." 

   9:          Display="Dynamic" Operator="NotEqual"></asp:CompareValidator ><br />

  10:      <asp:Button ID="btnEnviar" runat="server" Text="Enviar" />

image

Como pueden observar, la propiedad de Operator es NotEqual, ValueToCompare es 0, Type es integer. Tambien se puede validar el contenido de un control respecto a otro control.

   1: <asp:Label ID="NewPasswordLabel" runat="server" AssociatedControlID="NewPassword">New Password:</asp:Label>

   2: <asp:TextBox ID="NewPassword" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox>

   3: <asp:RequiredFieldValidator ID="NewPasswordRequired" runat="server" ControlToValidate="NewPassword" 

   4: CssClass="failureNotification" ErrorMessage="New Password is required." ToolTip="New Password is required." 

   5: ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:RequiredFieldValidator>

   6:                 

   7: <asp:Label ID="ConfirmNewPasswordLabel" runat="server" AssociatedControlID="ConfirmNewPassword">Confirm New Password:</asp:Label>

   8: <asp:TextBox ID="ConfirmNewPassword" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox>

   9: <asp:RequiredFieldValidator ID="ConfirmNewPasswordRequired" runat="server" ControlToValidate="ConfirmNewPassword" 

  10: CssClass="failureNotification" Display="Dynamic" ErrorMessage="Confirm New Password is required."

  11: ToolTip="Confirm New Password is required." ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:RequiredFieldValidator>

  12: <asp:CompareValidator ID="NewPasswordCompare" runat="server" ControlToCompare="NewPassword" ControlToValidate="ConfirmNewPassword" 

  13: CssClass="failureNotification" Display="Dynamic" ErrorMessage="The Confirm New Password must match the New Password entry."

  14: ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:CompareValidator>

   1: <asp:Label ID="NewPasswordLabel" runat="server" AssociatedControlID="NewPassword">New Password:</asp:Label>

   2: <asp:TextBox ID="NewPassword" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox>

   3: <asp:RequiredFieldValidator ID="NewPasswordRequired" runat="server" ControlToValidate="NewPassword" 

   4: CssClass="failureNotification" ErrorMessage="New Password is required." ToolTip="New Password is required." 

   5: ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:RequiredFieldValidator>

   6:                 

   7: <asp:Label ID="ConfirmNewPasswordLabel" runat="server" AssociatedControlID="ConfirmNewPassword">Confirm New Password:</asp:Label>

   8: <asp:TextBox ID="ConfirmNewPassword" runat="server" CssClass="passwordEntry" TextMode="Password"></asp:TextBox>

   9: <asp:RequiredFieldValidator ID="ConfirmNewPasswordRequired" runat="server" ControlToValidate="ConfirmNewPassword" 

  10: CssClass="failureNotification" Display="Dynamic" ErrorMessage="Confirm New Password is required."

  11: ToolTip="Confirm New Password is required." ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:RequiredFieldValidator>

  12: <asp:CompareValidator ID="NewPasswordCompare" runat="server" ControlToCompare="NewPassword" ControlToValidate="ConfirmNewPassword" 

  13: CssClass="failureNotification" Display="Dynamic" ErrorMessage="The Confirm New Password must match the New Password entry."

  14: ValidationGroup="ChangeUserPasswordValidationGroup">*</asp:CompareValidator>

En el ejemplo tenemos dos texbox en las cuales se van a almacenar el pasword nuevo de una cuenta, por consiguiente tienen que ser iguales.

Como pueden ver, esa la forma de usar el control CompareValidator.

Espero que les haya servidor este post breve.

Saludos. Romny