Je sais que c'est une question commune posée plusieurs fois sur SO. Mais aide-moi de toute façon. En fait, je dois télécharger des données de ma machine locale vers la base de données SQL distante. La base de données SQL distante possède une seule table où 800 000 enregistrements sont présents. Maintenant, j'ai environ 1.21311 enregistrements localement dans mon système, à partir de laquelle 75% des enregistrements existent déjà sur la base de données distante, mais nous ne savons pas exactement quels enregistrements. Nous vérifions notre numéro en utilisant un code unique appelé DCNNumber. Si DCN existe sur le serveur alors excluez else insert. Donc pour ce que j'ai fait, c'est que j'ai rassemblé tous les DCN de ma base de données distante en XML en utilisant Dataset. Le XML seul devient un fichier 24mb. De mes fichiers de texte locaux, je suis en train d'analyser un lac de 1,2 lacs d'enregistrement à une liste générique. Les DCN XML sont également ajoutés à une liste générique de chaîne.Filtrer les enregistrements de la liste générique <string>
Ensuite, ces deux listes sont comparées en utilisant if (! LstODCN.Contains (DCNFromXML)) {lstNewDCN.Add (item)};
Mais ce code prend près d'une heure pour exécuter et filtrer les enregistrements. J'ai donc besoin d'un moyen optimal de filtrer un tel chiffre.