2014-08-28 16 views
7

Qualcuno sa se e come si suppone che il client Microsoft OData funzioni su Xamarin Droid?Microsoft OData Client Xamarin non funziona

È il pacchetto NuGet 'Microsoft.OData.Client'.

Funziona correttamente su un'applicazione console, anche se i pacchetti di assieme sono contenuti solo all'interno di un progetto PCL.

Ho cercato tramite il generatore di codice OData v4.

Quando si esegue su Xamarin questo è ciò che ottengo:

System.AggregateException: One or more errors occured 

08-28 17:12:35.621 I/MonoDroid(29197): UNHANDLED EXCEPTION: System.AggregateException: One or more errors occured ---> Microsoft.OData.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.InvalidOperationException: An error occurred while processing this request. ---> System.InvalidCastException: Cannot cast from source type to destination type. 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.AsyncEndRead (System.Threading.Tasks.Task task, System.Object asyncState) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): --- End of inner exception stack trace --- 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.BaseAsyncResult.EndExecute[QueryResult] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): --- End of inner exception stack trace --- 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.DataServiceRequest.EndExecute[Nitzrech] (System.Object source, Microsoft.OData.Client.DataServiceContext context, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): --- End of inner exception stack trace --- 
08-28 17:12:35.621 I/MonoDroid(29197): at System.Threading.Tasks.Task.Wait (int,System.Threading.CancellationToken) <IL 0x0004a, 0x0025c> 
08-28 17:12:35.621 I/MonoDroid(29197): at System.Threading.Tasks.Task.Wait() <IL 0x00007, 0x00077> 
08-28 17:12:35.621 I/MonoDroid(29197): at System.Threading.Tasks.Task`1<System.Collections.Generic.IEnumerable`1<Client.ODataClient.Nitzrech>>.get_Result() <0x0007b> 
08-28 17:12:35.621 I/MonoDroid(29197): at Client.DataAccess.NewRepository.GetServerTable<Client.ODataClient.Nitzrech>() <0x00167> 
08-28 17:12:35.621 I/MonoDroid(29197): at Client.Droid.MainActivity.OnCreate (Android.OS.Bundle) [0x00032] in c:\Users\Avrohom\Documents\Visual Studio 2013\Projects\OData\Client\Client\Client.Droid\MainActivity.cs:33 
08-28 17:12:35.621 I/MonoDroid(29197): at Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (intptr,intptr,intptr) [0x00011] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.14-series/a5d57087/source/monodroid/src/Mono.Android/platforms/android-19/src/generated/Android.App.Activity.cs:2179 
08-28 17:12:35.621 I/MonoDroid(29197): at (wrapper dynamic-method) object.aebd8c0d-1bcc-4b67-a482-f6f129f09cca (intptr,intptr,intptr) <IL 0x00017, 0x00043> 
08-28 17:12:35.621 I/MonoDroid(29197): 
08-28 17:12:35.621 I/MonoDroid(29197): --> (Inner exception 0) Microsoft.OData.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.InvalidOperationException: An error occurred while processing this request. ---> System.InvalidCastException: Cannot cast from source type to destination type. 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.AsyncEndRead (System.Threading.Tasks.Task task, System.Object asyncState) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): --- End of inner exception stack trace --- 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.BaseAsyncResult.EndExecute[QueryResult] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): --- End of inner exception stack trace --- 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:35.621 I/MonoDroid(29197): at Microsoft.OData.Client.DataServiceRequest.EndExecute[Nitzrech] (System.Object source, Microsoft.OData.Client.DataServiceContext context, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
An unhandled exception occured. 

08-28 17:12:36.661 E/mono (29197): 
08-28 17:12:36.661 E/mono (29197): Unhandled Exception: 
08-28 17:12:36.661 E/mono (29197): System.AggregateException: One or more errors occured ---> Microsoft.OData.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.InvalidOperationException: An error occurred while processing this request. ---> System.InvalidCastException: Cannot cast from source type to destination type. 
08-28 17:12:36.661 E/mono (29197): at Microsoft.OData.Client.QueryResult.AsyncEndRead (System.Threading.Tasks.Task task, System.Object asyncState) [0x00000] in <filename unknown>:0 
08-28 17:12:36.661 E/mono (29197): --- End of inner exception stack trace --- 
08-28 17:12:36.661 E/mono (29197): at Microsoft.OData.Client.BaseAsyncResult.EndExecute[QueryResult] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:36.661 E/mono (29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:36.661 E/mono (29197): --- End of inner exception stack trace --- 
08-28 17:12:36.661 E/mono (29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object sourc 
08-28 17:12:36.671 E/mono-rt (29197): [ERROR] FATAL UNHANDLED EXCEPTION: System.AggregateException: One or more errors occured ---> Microsoft.OData.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.InvalidOperationException: An error occurred while processing this request. ---> System.InvalidCastException: Cannot cast from source type to destination type. 
08-28 17:12:36.671 E/mono-rt (29197): at Microsoft.OData.Client.QueryResult.AsyncEndRead (System.Threading.Tasks.Task task, System.Object asyncState) [0x00000] in <filename unknown>:0 
08-28 17:12:36.671 E/mono-rt (29197): --- End of inner exception stack trace --- 
08-28 17:12:36.671 E/mono-rt (29197): at Microsoft.OData.Client.BaseAsyncResult.EndExecute[QueryResult] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:36.671 E/mono-rt (29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System.Object source, System.String method, IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
08-28 17:12:36.671 E/mono-rt (29197): --- End of inner exception stack trace --- 
08-28 17:12:36.671 E/mono-rt (29197): at Microsoft.OData.Client.QueryResult.EndExecuteQuery[Nitzrech] (System 
In mgmain JNI_OnLoad 
The program 'Mono' has exited with code 0 (0x0). 

Qualcuno là fuori con un suggerimento per favore?

saluti,

Avrohom

+0

Che versione stai usando? Questo sembra essere un problema di packaging nugget, che è stato corretto in ODataLib 6.5.0. – Karata

risposta

0

Io non credo che questo pacchetto supporta Xamarin - dal nuget page:

Obiettivi .NET Core 5, e .NET portatile Lib con il supporto per. NET 4.0, SL 5.0, Win Phone 8, Win Phone 8.1 e Win 8.

Suggerirei di archiviare un problema con lo sviluppatore del libreria per ulteriori informazioni su questo, come può ben essere un bug se non supporta Xamarin:

https://github.com/OData/odata.net/issues

V'è il seguente componente nel Components Store, che dovrebbe funzionare, anche se è stato un po 'dal momento che ha stato aggiornato:

https://components.xamarin.com/view/simple.odata.client