我通过System.Data.SQLite和SubSonic 3使用Visual Studio 2008,C#,SQLite。我的应用程序已经到了需要升级数据库模式(添加列,触发器等),然后通过SubSonic生成的ActiveRecord对象添加新记录 - 所有这些都在单个事务的范围内,这样任何失败都可以很好地回滚。在事务中通过SubSonic 3修改SQLite数据库模式和数据
理想的情况下,这是有点什么,我希望做的:
Begin Transaction
try
Update Schema to latest version
Use SubSonic objects to add new records/modify existing
Commit Transaction
catch
Rollback Transaction
不幸的是,这是行不通的。所有模式更改当前都是通过SubSonic.Query.CodingHorror进行的,这似乎并不考虑事务。有没有办法在单个事务的范围内执行模式更改和SubSonic数据更改?