Necesito formatear mis GUID en formato discontinuo, todo en mayúsculas. Sé que usando myGuid.ToString("D")
o String.Format("{0:D}", myGuid)
da el formato discontinuo, pero usar mayúsculas D
en contraposición a una minúscula d
no me da un GUID en mayúsculas como pensé que sería. ¿Hay alguna manera de hacer esto sin hacer nada loco, o solo tengo que llamar al myGuid.ToString().ToUpper()
?.NET GUID formato de cadena en mayúsculas
Respuesta
lo hacen sólo hay que llamar
myGuid.ToString().ToUpper()
Sip. Podría hacer el esfuerzo de crear un IFormatProvider personalizado, pero no parece valer la pena aquí.
No creo que tenga otra opción que simplemente hacer myGuid.ToString().ToUpper()
. Aunque, siempre puedes escribir un método de extensión, tal vez algo como ToUpperString
, pero no creo que haya nada integrado en el sistema.
Tenga en cuenta que RFC 4122, que define la especificación UUID, estipula que los caracteres hexadecimales de salida deben estar en minúsculas al convertir la estructura en una cadena:
The hexadecimal values "a" through "f" are output as
lower case characters and are case insensitive on input.
Esto puede explicar por qué la estructura Guid no admite la salida directamente como una cadena en mayúscula
Dado que se ignora el parámetro de proveedor de formato ToString, la única alternativa (sin simplemente convertir la cadena en mayúscula) sería manipular directamente los bytes, teniendo cuidado de preservar el endianness. Simplemente convertir a mayúsculas (ya sea directamente oa través de un método de extensión) es probablemente mucho más sencillo.
Asumiendo que tiene una clase que tiene su GUID y que le gustaría retener el mecanografiado Guid, se podría hacer algo como esto:
public Guid Identifier { get; set; }
public String FormattedIdentifier => Identifier.ToString().ToUpper();
Usando 'myGuid.ToString(). ToUpper()' conserva el guid original en 'myGuid'. Esta respuesta no proporciona una nueva solución a la pregunta original. –
Creo que todavía proporciona algún valor. Mi ejemplo muestra cómo puede encapsular el formato del Guid. – FastBiscuit
- 1. Javascript convertir GUID en formato de cadena en Base64
- 2. Guid de orden de bytes en .NET
- 3. Cómo validar Guid en .net
- 4. en mayúsculas una cadena
- 5. Guid vs cadena aleatoria
- 6. Mostrar un GUID en formato de 36 letras
- 7. formato printf en .NET
- 8. opciones de formato de cadena para int en .NET
- 9. Cómo convertir .NET cadena de formato estándar a cadena de formato de Excel
- 10. dividir una cadena en mayúsculas
- 11. Cadena de mapa para guid con Dapper
- 12. GUID, cadena aleatoria de 30 caracteres
- 13. .NET HttpSessionState mayúsculas y minúsculas
- 14. ¿Cómo palabras mayúsculas griegas correctamente en .NET?
- 15. Convertir .NET Guid a MongoDB ObjectID
- 16. ¿Cuál es la longitud de cadena de un GUID?
- 17. Separar una cadena con mayúsculas
- 18. Formato de cadena en MySQL
- 19. formato de cadena en C#
- 20. Contar letras mayúsculas en cadena usando perl
- 21. Explotar una cadena en mayúsculas y minúsculas?
- 22. Cómo validar GUID es un GUID
- 23. Cómo intentar convertir una cadena a un Guid
- 24. Diferenciar Guid y parámetros de cadena en MVC 3
- 25. Cadena de formato dinámicamente
- 26. pitón, cadena de formato
- 27. dividir una cadena de letras mayúsculas
- 28. Cómo convertir guid? guid
- 29. Analizar cadena en formato HH.mm a TimeSpan
- 30. Convertir de RAW (16) de Oracle a GUID de .NET
La especificación internacional de 2008-08, http: // www. itu.int/rec/T-REC-X.667/en, concuerda con ese RFC 4122: '6.5.4 El software que genera la representación hexadecimal de un UUID no debe usar letras mayúsculas. NOTA - Se recomienda que la representación hexadecimal utilizada en todos los formatos legibles por humanos se restrinja a letras minúsculas. Sin embargo, el software que procesa esta representación requiere aceptar letras mayúsculas y minúsculas como se especifica en 6.5.2. –
Sé que esto es algo antiguo, pero me parece interesante que la herramienta "Crear GUID" en Visual Studio genera GUID en mayúsculas También el conjunto de herramientas WIX recomienda que los GUID deben estar en mayúsculas para soporte completo. No recuerdo los detalles de esa recomendación, solo recuerdo haberla leído. –