Marc Rubiño

ASP.NET, C#, AJAX.NET, JavaScript, etc.

Sobre mi :

  • Marc Rubiño
    LinkedIn Twitter Geeks.ms

    Visitantes:

    Locations of visitors to this page

    Reconocimientos:

Recent Posts

Tags

Community

Email Notifications

Archives

June 2009 - Artículos

Configurar una aplicación ASP.NET en IIS

Una de las consultas habituales que nos podemos encontrar en los foros MSDN y que se suele repetir constantemente, es como poder publicar una aplicación ASP.NET en un servidor web.image

Por eso he creado un ScreenCast para mostrar como publicar nuestra aplicación ASP.NET de una forma sencilla con las herramientas que nos proporciona el propio Visual Studio.

Podéis acceder al video en :

Channel9 España

Videos en castellano sobre tecnología Microsoft, entrevistas, trucos de código...

 

Espero que os sirva ;-)

http://channel9.msdn.com/posts/Daniel+Garzon/Publicacion-de-Aplicaciones-Web-ASPNET/

Validar un elemento seleccionado de un Datalist

Siguiendo con la línea de los últimos post que he publicado, hoy voy a mostrar como poder validar un control datalist con un validador  estándar de ASP.NET. Normalmente este tipo de controles no se pueden validar de una manera sencilla con estos validadores.

Pero gracias al artículo de José Manuel Alarcón que nos introduce en la forma correcta para utilizar los validadores con este tipo de controles.

Permitir la validación de un control con los validadores estándar de ASP.NET

Siguiendo el consejo de José Manuel, para poder validar este control de una manera elegante generaré un control personalizado para este menester.

 [ToolboxData("<{0}:CustomDatalist runat=server></{0}:CustomDatalist>")]
    [ValidationProperty("NumItems"), SupportsEventValidation]
    public class RequiredDatalist : System.Web.UI.WebControls.DataList
    {
        public string NumItems
        {
            get
            {
                if (this.Items.Count > 0)
                    return this.Items.Count.ToString();
                else
                    return String.Empty;
            }
        }
    }

Luego en el proyecto web añadiremos el Datalist preparado para la validación.

<cc1:RequiredDatalist ID="DataList1" CssClass="tableproductos" runat="server">
<itemtemplate>
  <asp:CheckBox ID="chkItem" runat="server" Text='<%# Eval("Value") %>' />
</itemtemplate>
</cc1:RequiredDatalist>

Y el validador que hace referencia a una función JavaScript que será el que validara si existe un elemento seleccionado.

<asp:CustomValidator ID="CustomValidator2" runat="server" 
          ClientValidationFunction="ValidarListaChkSeleccionada" ValidateEmptyText="True"
ControlToValidate="DataList1" Display="Dynamic" ></asp:CustomValidator>

Finalmente para que el control pueda ser validado añadiremos la función JavaScript.

function ValidarListaChkSeleccionada(source, arguments) {
    var resultado = false;
    if ($("#" + source.controltovalidate).length > 0) {
        $("#" + source.controltovalidate + " tr td input").each(function() {
            if (this.checked)
                resultado = true;
        });

        if (resultado)
            arguments.IsValid = true;
        else
            arguments.IsValid = false;
    }
}  

De esta manera tan sencilla y mucho más elegante que utilizar controles ocultos para saber si hay un elemento seleccionado, tenemos nuestra lista validada.

 

Vdatalist

Espero que este ejemplo sea de utilidad.

Lo que se nos avecina con Natal y XBOX 360

Yo realmente no soy muy aficionado a las consolas, pero realmente esta tecnología parece impresionante.

Estoy deseando probar a jugar con un clásico como el Street Fighter. XD

Nos Vemos.

CrossPosting: http://lonetcamp.com/Community