2010-10-13 8 views
10

ASP.NET 4.0 ha introducido la propiedad 'ClientIDMode', que permite especificar cómo se representan los ids del elemento html en el html de salida.Número de validadores y ClientIDMode (ASP.NET)

Mi proyecto está configurado para 'estático' (el más corto/no contiene identificadores de jerarquía)

Al usar cualquier validador (RequiredFieldValidator, RegularExpressionValidator ...), a menos que el control está validando explícitamente tiene su ClientIDMode propiedad: AutoID Obtengo el error:

Input parameter 'controlId' cannot be an empty string.

¿Es este el comportamiento esperado?

Editar: Ser un poco tonto con el mensaje de error, me quería poner una identificación en el Validador, que obviamente no lo hago (a menos que tenga que hacer referencia).

Parece extraño que falle debido a este motivo.

Respuesta

3

Me encontré con esto de una manera ligeramente diferente: si mi control de usuario tenía ClientIDMode="Static", recibí el error en los validadores que existían dentro del control (no todos tenían ID).

Una solución consiste en cambiar los ClientIDModes en el control del usuario infractor. ¡Espero que esto ayude!

Cuestiones relacionadas