Quindi in C# l'istruzione switch supporta solo tipi interi (non Guids), quindi una semplice tabella di confronto O (1) non sembra possibile.Il modo più efficiente per attivare una guida in C#
Qual è il modo più efficiente computazionalmente per abbinare su un Guid
In un primo momento ho pensato
if(gMyGuid == new Guid("VALUE"))
else if (gMyGuid == new Guid("VALUE2")
else if (gMyGuid == new Guid("VALUE3")
...
else if (gMyGuid == new Guid("VALUEn")
Tuttavia in questo modo Sto creando una nuova istanza della Guid ogni volta per un confronto . Potrei convertire il Guid in una stringa, quindi confrontarlo sulla stringa, ma il confronto tra stringhe è una stringa piuttosto lunga per il confronto.
Qualsiasi consiglio è ben accetto.
confrontare la rappresentazione stringa invece? – chiccodoro
L'istruzione C# 'switch' non supporta solo i tipi interi. Ad esempio, supporta anche le stringhe. Tuttavia, richiede che le etichette dei casi da testare siano conosciute al momento della compilazione. –
oppure si definiscono i GUID che si desidera confrontare solo una volta e riutilizzarli ogni volta che si esegue il confronto. In questo modo puoi contare sulle persone che hanno implementato il confronto del GUID per ottimizzarlo. – chiccodoro