有誰知道如何讓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