domingo, 28 de marzo de 2010

DoEvents en C#

El equivalente a DoEvents del viejo vb6 es el mismo en c#, pero escondido, es decir, no es una función global, lo accederemos asi:

Application.DoEvents();

Si tenes que acceder desde una clase, debes poner esto:
System.Windows.Forms.Application.DoEvents();

lunes, 22 de marzo de 2010

Javascript: Como llamar una funcion con una string

Si queremos llamar a una función de javascript contando con una cadena de texto, pasandole parámetros, etc, lo que tenemos que hacer es "evaluar" esa expresión. Esto nos permitirá correr cualquier pedazo de código que querramos en tiempo de ejecución (por ejemplo código dinámico).
Esto tiene el problema que no se compila, ni sabremos de sus errores hasta el momento que lo corramos.

Ejemplo:



Aqui se puede observar que llamamos a nombreFuncion con 3 parametros, dos de ellos estáticos y uno dinámico. El primero un boolena "true", el segundo es el parámetro dinámico, y el tercero es un número.
Por último, si esta función devuelve valor, lo hará en la variable "ret"

martes, 16 de marzo de 2010

Codificar url o texto online

Desde esta dirección se baja una página html que codifica o decodifica rápidamente el texto que queremos tratar:

http://sites.google.com/site/netzreport2/online_tool_for_url_en_decoding.html

Casi abajo de todo hay una caja de texto que dice "URL decoded text", ingresamos nuestro texto, y debajo hacemos click en Encode si deseamos codificar nuestra cadena o Decode si deseamos decodificarla.

Codificar datos complejos para pasarlos por url

Si queremos codificar (u encodear) una cadena (string) o url para pasarla como parámetro de otra url, a través de un navegador hacia el servidor, tenemos que hacer lo siguiente:

Dim url As String
url = "http://www.abc.com/pagina.aspx?direccion=" & Server.UrlEncode("pepe.aspx?eee=1")


Este ejemplo nos permite ver como se puede codificar una dirección a otra página, pasarla por un parámetro y que la reciba una página en el servidor para poder redireccionar (con response.Redirect por ejemplo) el navegador hacia allí.

jueves, 4 de marzo de 2010

Reemplazar sin importar el casing o si es mayuscula o minuscula

Por alguna razon estas funciones no estan en la clase string como deberian. Pero, de todas formas estan en algun lugar del framework, esto es la clase "Strings" de .net.
Si utilizamos la funcion replace de ahi tendremos que pasar primero la string con la cual queremos trabajar, luego lo que queremos encontrar, y como tercero que es lo que queremos poner. Hay dos parámetros que indican desde que indice hasta cuanta cantidad de caracteres considerará el replace.
Por último, y lo mas importante, es el parámetro que indica que esto es texto, es decir, no le hace caso a mayusculas/minusculas.

Ejemplo:
dim strDestino as string = Strings.Replace(strOrigen, strQueReemplazar, strPorQueReemplazarlo, 0, , CompareMethod.Text)

miércoles, 3 de marzo de 2010

El tipo o espacio de nombre profilecommon no se encuentra

Este error sucede muchas veces cuando se borro accidentalmente o se cambio el web.config. Es decir, no se declaro la sección que define el profilecommon.
Me he encontrado con esto las veces que hago una migración o cambio una pagina a otro proyecto, o hago uno nuevo sin copiar los archivos necesarios.

Esto es fácil de solucionar, solo agregando la sección del web.config que falta, es decir la "profile" debajo de "system.web".
Puede hacerse de la siguiente manera:

<profile>
<properties>
<add name="email">
<add name="direccion">
</properties>
</profile>