2017-10-03 6 views
1

J'ai commencé à apprendre Xamarin et créé un petit tutoriel pour récupérer des données du serveur. J'ai utilisé le mécanisme NSUrlSession. Voici mon code. Je ne suis pas sûr de savoir pourquoi avertissement est en cours pour NSUrlSession. S'il vous plaît aidez-moi à comprendre et à résoudre cet avertissement.NSUrlSession dans Xamarin

avertissement CS0618: 'NSUrlSession.FromConfiguration (NSUrlSessionConfiguration, NSUrlSessionDelegate, NSOperationQueue)' est obsolète: 'Utilisation de la surcharge avec un paramètre INSUrlSessionDelegate.' (CS0618) (SampleApp)

public void getData() { 

     NSUrl url = new NSUrl("some url"); 
     NSUrlRequest request = new NSUrlRequest(url); 
     NSUrlSession session = null; 
     NSUrlSessionConfiguration myConfig = NSUrlSessionConfiguration.DefaultSessionConfiguration; 
     session = NSUrlSession.FromConfiguration(myConfig, new MySessionDelegate(), new NSOperationQueue()); 
     NSUrlSessionTask task = session.CreateDataTask(request, (data, response, error) => { 

     }); 
     task.Resume(); 
    } 

    public class MySessionDelegate : NSUrlSessionDelegate, INSUrlSessionDelegate 
    { 

    } 

Répondre

1

NSUrlSessionDelegate implémente les INSUrlSessionDelegate protocoles de sorte que vous pouvez jeter:

session = NSUrlSession.FromConfiguration(myConfig, (new MyNSUrlSessionDelegate() as INSUrlSessionDelegate), new NSOperationQueue()); 

Ou:

Changer votre UrlSessionDelegate d'hériter de NSObject puis mettre en œuvre la INSUrlSessionDelegate protocole:

public class MySessionDelegate : NSObject, INSUrlSessionDelegate 
{ 
    ~~~ implement the protocols that you need 
} 
+0

Merci pour la solution rapide, natif est si facile à utiliser, pas d'aide dans Xamarin. Merci – Kashif