Impossibile impostare CookIeContainer sul client di servizio a MonoTouch
-
11-11-2019 - |
Domanda
Ho un progetto MonoTouch usando un codice che condivido con un'app Windows Phone 7. Questo codice condiviso crea un proxy WCF per un servizio di dominio RIA (utilizzando l'endpoint /sapone), generato utilizzando slsvcutil.exe. Ecco come appare il codice:
BasicHttpBinding binding = new BasicHttpBinding();
EndpointAddress address = new EndpointAddress("http://someurl/someservice.svc");
var client = new MyDomainServiceSoapClient(binding, address);
client.CookieContainer = _cookieContainer; // <-- EXCEPTION here
Questo pezzo di codice funziona in WP7, ma fallisce in Monotouch e non riesco a trovare il perché. L'eccezione che ricevo in monotouch è:
System.InvalidOperationException: Unable to set the CookieContainer.
Please make sure the binding contains an HttpCookieContainerBindingElement.
at MyDomainServiceSoapClient.set_CookieContainer
Ho provato le seguenti opzioni prima di impostare CookieContainer, ma comunque lo stesso errore:
binding.EnableHttpCookieContainer = true;
binding.AllowCookies = true;
binding.CreateBindingElements()
.Add(new HttpCookieContainerBindingElement()); // ??
AGGIORNAMENTO: Ho anche provato a costruire una caduta personalizzata a mano e aggiungendo un HTTPCookEIcontainerBindingelement, ma anche questo non funzionerà.
Qualche idea? Il sito Monotouch mi dice che l'implementazione del WCF è "sperimentale", quindi forse questa è una limitazione nell'attuale versione di MonoTouch?
Nessuna soluzione corretta