2009-08-18 7 views
1

J'écris un service Windows qui importe un fichier XML dans une base de données SQLite.SubSonic 2.x Batch Query SQLite

Il y a 3 000 enregistrements impairs qui doivent être créés et j'utilise SubSonic 2.2 pour le projet. Au lieu de parcourir une liste et de l'ajouter à la base de données une par une, il est possible d'interroger par lots plus de 1 nouvel enregistrement à la fois.

Je sais que l'objet "BatchQuery" dans 3.x m'aiderait ici mais j'espérais qu'il y avait quelque chose dans 2.x qui a fait une tâche similaire.

merci à l'avance Doug

Répondre

5

SubSonic 2.x a une méthode pour effectuer sauve lots.

Voici un exemple:

var itemsToSaveCollection = new ItemCollection(); // Your collection type here 

foreach (var xmlItem in xmlItems) 
{ 
    var item = new Item(); // Your data model type here 
    // Set item values from xml 
    itemsToSaveCollection.Add(item); 
} 

itemsToSaveCollection.BatchSave(); 
+0

-ce faire un appel de base de données? – Doug

+0

Il effectue en effet un appel de base de données. Vérifiez les lignes 98 à 109 de la SubSonic [source] (http://www.koders.com/csharp/fidD7B3D21941459E52F4672CEBD784AA5A32F1E48D.aspx?s=datatable) – dcharles

+0

Aimez votre travail marve - après l'avoir fait la voie laide pour la preuve de concept (il a fallu 10 minutes pour terminer) - c'est génial car c'est comme ça que je voulais le faire - 2 secondes pour terminer. – Doug

Questions connexes