JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Cómo generar identificadores (GUID) en .NET

Un GUID es un conjunto de números que constituyen un identificador único (Global Unique IDentifier), es decir, que tiene la particularidad de que es imposible (al menos en teoría) generar otro idéntico aunque usemos el mismo algoritmo.

Sus utilidades son muchas pero obviamente todas se refieren a la necesidad de identificar de manera úica alguna entidad, dato u objeto, de forma que lo podamos distinguir de cualquier otro independientemente de cómo, cuándo y dónde haya sido generado. Es especialmente útil en aplicaciones de bases de datos para identificar de manera única registros de diversas tablas (o de una sola si no usamos autonuméricos).

Antes de .NET, sobre todo si programabas con Visual Basic, un truco muy socorrido para generar este tipo de GUID era utilizar SQL Server para generarlos, empleando la siguiente consulta:

SELECT NEWID()

que devuelve expresiones similares a esta: 9035DEC7-A6C2-4B1B-AA99-37401965E7C0

Lo malo es que si no teníamos SQL Server no nos servía el truco. Y aún teniéndolo es un poco matar moscas a cañonazos ¿no?

En .NET lo tenemos mucho más fácil ya que existe una clase especializada llamada, como no, 'Guid', dentro del espacio de nombres 'System'.

Así, para generar un nuevo GUID sólo tenemos que escribir el siguiente código (en C#):

System.Guid  miGUID = System.Guid.NewGuid();
String sGUID = miGUID.ToString();

que devolverá un identificador del mismo estilo, por ejemplo 'fcd0f459-bc5b-489c-91fa-4b131fdc3641'.

Banner

Comentarios (1) -

Muchisimas gracias, me has solucionado la vida en un minuto!!

Responder

Agregar comentario

  Country flag

biuquote
  • Comentario
  • Vista previa
Loading

JASoft.org | Solucionar el problema de la velocidad lenta de Terminal Services en Vista

JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Solucionar el problema de la velocidad lenta de Terminal Services en Vista

Cuando empiezas a usar Windows Vista para conectarte mediante Terminal Services a máquinas remotas te das cuenta de que, de repente, todo va muuucho más lento. Si te conectas desde el mismo sitio al mismo terminal remoto pero usando en el cliente Windows XP, verás que la cosa va mucho más rápida :-?

De hecho la cosa puede ser mucho peor, y en mi caso empezó a serlo cuando tuve Windows Vista tanto en el PC de mi oficina como en el portátil de mi casa. Teniendo Vista en ambos extremos la cosa empezó a ponerse realmente dura. Casi no había forma de usar la consola remota. Un problemón.

¿Y esto? ¿a qué se debe?

El caso es que en Internet es muy difícil encontrar información sobre este asunto, y mucho menos soluciones. Pero con un poco de paciencia di con un artículo de Tom Keating que explica cómo solucionarlo.

El problema viene de que el cliente de TS nuevo utiliza una nueva característica de Vista llamada "auto-ajuste de la ventana de recepción TCP/IP". Básicamente es algo muy útil para conseguir una optimización automática de nuestra conectividad, pero en determinados casos puede tener consecuencias nefastas. Uno de esos casos es Terminal Services. En el artículo referido antes lo explica con detalles si lo quieres leer.

Normalmente no deberías desactivar esta característica, pero si eres como yo y te pasas el día conectado a diversas máquinas remotas a través de TS, lo mejor es que lo hasgas pero ya mismo...

Para conseguirlo basta con escribir esto en la línea de comandos (con derechos de administrador):

netsh interface tcp set global autotuninglevel=disabled

¡Listo! Hazlo sobre todo en el equipo cliente y ¡voilà! de repente TS comienza a funcionar a toda mecha otra vez. Una verdadera pena, la verdad.

He dicho en muchas ocasiones públicamente lo mucho que me gusta Vista, pero hay que reconocer que para usaurios avanzados todavía sigue teniendo bastantes pegas. Esperemos que con ese tan traído y tan llevado Service Pack 1 que van a sacar el año que viene, muchos de estos detalles se solucionen.

Si quieres tener detalles exhaustivos leete el excelente post de Tom Keating reseñado antes.

Espero que a muchos les soluciones el problema :-)

Banner

Comentarios (1) -

Que bueno!!!, le voy a mandar también una copia a ivanuchi que se pasa el día con el cliente.
Lo interesante sería un script en powershell o que para la primera instancia del cliente TS aplique autotuninglevel=disabled y cuando termine la última instancia autotuninglevel=enabled. O sería mejor un servicio de windows?

Responder

Agregar comentario

  Country flag

biuquote
  • Comentario
  • Vista previa
Loading