有谁知道如何让MySQL事务在Mono下工作?我使用MySQL连接器/ NET(通过Subsonic 3),它在Microsoft .NET下完美工作。然而,最近我尝试在Ubuntu的Mono下运行同一个站点,它几乎可以工作 - 除了我似乎无法使事务工作。MySQL连接器/ NET - 支持Mono下的事务
阅读Mono/MySQL网站时,并不清楚什么是和不支持。
原来的问题是这样的调用堆栈NotImplementedExcetion:
[System.NotImplementedException]: The requested feature is not implemented.
at MySql.Data.MySqlClient.MySqlConnection.EnlistTransaction (System.Transactions.Transaction) <0x00181>
at MySql.Data.MySqlClient.MySqlConnection.Open() <0x00381>
at SubSonic.DataProviders.DbDataProvider.CreateConnection (string) <0x00059>
at SubSonic.DataProviders.DbDataProvider.CreateConnection() <0x00015>
有在MySQL网站,这似乎指向单声道不支持所需的基础设施,以使交易工作的这几个提及。还有一个评论说,使用CommittableTransaction而不是TransactionScope时事务工作正常。所以我试了一下,但得到了同样的例外。
对MySQL网站的另一个评论建议使用MONO
构建选项重建MySQL数据提供程序。我尝试过的网站现在可以工作,但是交易没有被使用 - 他们已经被禁用了。真?
我发现很难相信事务不能在这个环境中工作,但找不到工作的例子。
单声道2.6.7,MySQL连接/ NET 6.3.4,亚音速3的,Ubuntu 10.10