2013-06-27 38 views
0

我想在C#中使用TouchDB查詢視圖。我用TouchDB和MonoTouch的可在這裏的綁定:https://github.com/mono/monotouch-bindings/tree/master/CouchbaseTouchDB查看查看拋出MarshalDirectiveException

當信號發送的委託方法被調用時,我得到一個「System.Runtime.InteropServices.MarshalDirectiveException」說:「這是傳遞給非託管類型MonoTouch.Foundation.NSObject代碼必須具有StructLayout屬性。「

我發現這個bug報告在這裏:https://bugzilla.xamarin.com/show_bug.cgi?id=4781類似於我的問題,但沒有任何更新,因爲7月27日,2012年

這裏是我的測試代碼:

CouchTouchDBServer server = new CouchTouchDBServer(); 
CouchDatabase database = server.GetDatabase ("grocery-sync"); 
database.TracksChanges = true; 

// Create a test view 
design = database.DesignDocumentWithName ("grocery"); 
design.DefineView ("testView", (doc,emit) => { 
    emit (doc, doc); // Crashes here 
}, "1.0"); 

// Query the view 
CouchQuery query = design.CereateQuery("testView"); 
RestOperation op = query.Start(); 
string response = op.ResponseBody.AsString; 
Console.WriteLine(response); 

有沒有人成功用MonoTouch查詢TouchDB的觀點?感謝您的幫助

回答

0

它似乎是Xamarin的bug