J'utilise Visual Studio 2008, C#, SQLite via System.Data.SQLite avec SubSonic 3. Mon application est arrivée à un état où je dois mettre à niveau le schéma de base de données (ajouter des colonnes, des triggers, etc) puis ajouter de nouveaux enregistrements via des objets ActiveRecord générés par SubSonic - le tout dans le cadre d'une seule transaction afin que les échecs puissent être bien annulés.Modification d'un schéma de base de données SQLite et de données via SubSonic 3 dans une transaction
Idéalement, c'est un peu ce que j'espérais faire:
Begin Transaction
try
Update Schema to latest version
Use SubSonic objects to add new records/modify existing
Commit Transaction
catch
Rollback Transaction
Malheureusement, cela ne fonctionne pas. Tous les changements de schéma sont actuellement en cours via SubSonic.Query.CodingHorror, qui ne semble pas respecter les transactions. Existe-t-il un moyen d'effectuer à la fois des modifications de schéma et des modifications de données SubSonic dans le cadre d'une transaction unique?