web-dev-qa-db-fra.com

Assigner un GUID en C #

J'ai beaucoup de code qui utilise des GUID (une architecture m'a été remise - ce n'est pas mon choix).

Généralement, les valeurs proviennent d'une base de données et sont chargées en mémoire à partir de là. Cependant, je fais quelques tests et je codifie en dur certains GUID dans le code. 

Je n'ai pas trouvé de moyen facile d'attribuer des GUID, j'ai donc fini par utiliser Guid.Parse ("...."). Existe-t-il un moyen plus simple d’affecter GUIDS en C #?

value = Guid.Parse("11223344-5566-7788-99AA-BBCCDDEEFF00");

Il semble que beaucoup de temps supplémentaire soit nécessaire pour créer la chaîne, puis l’analyser. Je penserais qu'il y aurait un moyen plus facile de l'attribuer directement.

19
Richard

Si vous avez déjà une représentation sous forme de chaîne de la Guid, vous pouvez faire ceci:

Guid g = new Guid("11223344-5566-7788-99AA-BBCCDDEEFF00");

Et si vous voulez une Guid neuve alors faites 

Guid g = Guid.NewGuid();
40
Tom Chantler

Si vous utilisez le guid comme une constante, vous pouvez le placer dans les paramètres de votre projet .enter image description here que vous pouvez atteindre vos valeurs de la manière suivante:

var myGuid = Properties.Settings.Default.MyGuid;
1
Yaugen Vlasau

si vous optez pour l'option constante, vous pouvez utiliser cette méthode Guid (l'une des six disponibles):

private static const Guid PUBLIC_KEY = new Guid((int)0x93EE8E7F, 0x13FA, 0x4C6D,
        new byte[] { 0x9D, 0x32, 0xE6, 0xEC, 0xD1, 0x4A, 0x91, 0xA7 }); 
// {93EE8E7F-13FA-4C6D-9D32-E6ECD14A91A7}
0
user2476798