Générer un id unique

Je suis un étudiant à l'université, et notre tâche est de créer un moteur de recherche. J'ai de la difficulté à générer un id unique à attribuer à chaque url, lorsqu'il est ajouté à la frontière. J'ai essayé en utilisant le hachage SHA-256 de l'algorithme ainsi que les Guid. Voici le code que j'ai utilisé pour mettre en œuvre le guid:

public string generateID(string url_add)
{
    long i = 1;

    foreach (byte b in Guid.NewGuid().ToByteArray())
    {
        i *= ((int)b + 1);
    }

    string number = String.Format("{0:d9}", (DateTime.Now.Ticks / 10) % 1000000000);

    return number;
}
  • Un GUID est lié à être unique au monde (d'où le nom), donc je ne comprends pas le problème.
  • Je pense que son souci est qu'il veut que l'IDENTIFIANT unique basé sur l'URL, donc un one-way hash de l'URL d'un ID unique. Dans ce cas, SHA1 serait de travailler.
  • Il y a toujours objet.GetHashCode(). Bien que je ne pense pas que la garantie unique.
  • c'est à peu près garanti de ne pas être unique
  • la réponse est facile: return url_add;
  • Comme mentionné dans les réponses, découvrez Guid.NewGuid().