2014-10-16 54 views
3

我的代碼崩潰並在模擬器上出現以下錯誤。它嘗試運行GetDataFromOdataService()方法中的try塊,並引發錯誤併發出警報。我使用Xamarin.FormXamarin形式的OData連接

using Simple.OData.Client; 
using System.Threading.Tasks; 

     private ODataClient mODataClient; 

    protected async override void OnAppearing() 
    { 
     base.OnAppearing(); 
     await InitializeDataService(); 
     await GetDataFromOdataService(); 
    } 

    public async Task <bool> InitializeDataService(){ 

      try { 
       mODataClient = new ODataClient ("http://services.odata.org/Northwind/Northwind.svc/"); 

      } 

      catch { 
       await DisplayAlert("Error", "Connection Error", "OK", "Cancel"); 
       System.Diagnostics.Debug.WriteLine("ERROR!"); 

      } 
      return true; 
     } 

    public async Task<bool> GetDataFromOdataService(){ 

      try { 

       myCustomers= await mODataClient.For("Customers").Top(10).FindEntriesAsync(); 

      } 

      catch { 
       await DisplayAlert("Error", "Connection Error", "OK", "Cancel"); 
       System.Diagnostics.Debug.WriteLine("ERROR!"); 

      } 

      return true; 
     } 

enter image description here

+0

你能通過電子郵件發送你的最新代碼嗎? – Pete 2014-10-16 19:33:24

+0

當然,我現在發送它。 – casillas 2014-10-16 19:33:41

回答

1

夫婦的問題: -

在它是做var list = new ListView()構造制約了它不是設置類級別範圍變量本地。因此調整爲list = new ListView()

另一件事是在GetTheData函數中,其中項源被指定爲list.ItemsSource = myList;,它需要更改爲list.ItemsSource = Customers;

我已經將zip文件重新打包併發送給你。讓我知道這是否適合你?您現在應該可以在ListView中看到您的所有客戶。

+0

@Casillas我正在使用MVVMCross框架構建Xamarin.ios應用程序,並且想要使用OData服務。你能否給我這個想法如何使用Xamarin.iOS中的OData服務? – 2017-11-18 08:45:57