Quick Hintergrund Info: Es gibt eine Wcf mit Authentifizierung, die BasicHttpBinding verwenden. Der Dataservice.cs enthält den dataserviceclient basierend auf den Service-Metadaten (generiert mit svcutil).Xamarin WCF BasicHttpBinding - Methode oder Operation ist nicht implementiert
Ich machte zuerst eine Konsole App mit dem Code und es funktionierte perfekt, dann habe ich ein Xamarin Android-Projekt. Ich habe den Code kopiert. referenzierte system.runtime.serialization und system.servicemodel. Dies gibt mir eine Die Methode oder Operation ist nicht implementiert Fehler.
Hauptcode:
base.OnCreate(bundle);
BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.TransportWithMessageCredential);
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
EndpointAddress address = new EndpointAddress("https://serviceurl/service1.svc");
PermissiveCertificatePolicy.Enact("CN=MySelfSignedCert");
var client = new DataServiceClient(binding, address);
client.ClientCredentials.UserName.UserName = "Username";
client.ClientCredentials.UserName.Password = "Passord";
try
{
var projects = client.GetDataTest(1);
}
catch (Exception ex)
{
var error = ex.Message;
}
Ich bin neu programmieren Xamarin so konnte ich hier entscheidende Punkt fehlt, aber bitte denken Sie daran, dass dies funktioniert als Konsolenanwendung und der Service ist online (nicht localhost).
Unhandled Exception:
System.NotImplementedException: Die Methode oder Operation ist nicht implementiert.
07-20 11: 35: 39.704 D/Mono (1452): DllImport versucht zu laden: '/system/lib/liblog.so'. 07-20 11: 35: 39.704 D/Mono (1452): DllImport geladene Bibliothek '/system/lib/liblog.so'. 07-20 11: 35: 39.704 D/Mono (1452): Dll Suche in: '/system/lib/liblog.so' ('/system/lib/liblog.so'). 07-20 11: 35: 39.704 D/Mono (1452): Suche nach '__android_log_print'. 07-20 11: 35: 39.704 D/Mono (1452): Songtext '__android_log_print'. 07-20 11: 35: 39.704 D/Mono (1452): Gefunden als '__android_log_print'. 07-20 11: 35: 39.708 I/MonoDroid (1452): UNHANDLED AUSNAHME: 07-20 11: 35: 39.708 I/MonoDroid (1452): System.NotImplementedException: Die Methode oder Operation ist nicht implementiert. November 7-20: 35: 39,708 I/MonoDroid (1452): bei System.ServiceModel.BasicHttpBinding.CreateSecurityBindingElement() [0x00025] in
/Benutzer/Builder/data/Fahrspuren/2923/52.635.947/source/mono /mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding_4_5.cs:125 November 07-20: 35: 39,708 I/MonoDroid (1452): bei System.ServiceModel.BasicHttpBinding.CreateBindingElements() [0x00006] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding_4_5.cs:98 07-20 11: 35: 39.708 I/MonoDroid (1452): bei System.ServiceModel.Channels.CustomBinding..ctor (System.ServiceModel.Channels.Binding-Bindung) [0x00000] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel.Channels/CustomBinding.cs:60 07-20 November: 35: 39,708 I/MonoDroid (1452): bei System.ServiceModel.Channels.Binding.CreateContext (System.ServiceModel.Channels.BindingParameterCollection Parameter) [0x00000] in
/Benutzer/Builder/data/Fahrspuren/2923/52.635.947/source/mono /mcs/class/System.ServiceModel/System.ServiceModel.Channels/Binding.cs:96 07-20 11: 35: 39.708 I/Monodroid (1452): at System.ServiceModel.Channels.Binding.CanBuildChannelFactory [TChannel] (System.ServiceModel.Channels.BindingParameterCollection-Parameter) [0x00011] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel.Channels/Binding.cs:267 07-20 11: 35: 39.708 I/MonoDroid (1452): bei System.ServiceModel.ChannelFactory.(CreateFactory) [0x000ad] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel/ChannelFactory.cs:199 November 7-20 : 35: 39.708 I/MonoDroid (1452): bei System.ServiceModel.ChannelFactory.OnOpening() [0x00006] in
/Benutzer/Ersteller/Daten/Lanes/2923/52635947/Quelle/Mono/MCS/Klasse/System.ServiceModel/System.ServiceModel/ChannelFactory.cs: 383 November 07-20: 35: 39,708 I/MonoDroid (1452): bei System.ServiceModel.Channels.CommunicationObject.ProcessOpening() [0x00017] in
/Benutzer/Ersteller/Daten/Lanes/2923/52635947/Quelle/Mono/MCS/Klasse/Syste m.ServiceModel/System.ServiceModel.Channels/CommunicationObject.cs: 276 07-20 11: 35: 39.708 I/MonoDroid (1452): bei System.ServiceModel.Channels.CommunicationObject.Open (TimeSpan Timeout) [0x00000] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel.Channels/CommunicationObject.cs:169 November 07-20: 35: 39,708 I/MonoDroid (1452): bei System.ServiceModel.Channels.CommunicationObject.Open() [0x00000] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/ System.ServiceModel.Channels/CommunicationObject.cs: 164 07-20 11: 35: 39.708 I/MonoDroid (1452): um System.ServiceModel.ChannelFact (Ory.EnsureOpened) [0x00058] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel/ChannelFactory.cs:297 07- 20 11: 35: 39.708 I/MonoDroid (1452): unter System.ServiceModel.ChannelFactory`1 [TChannel] .CreateChannel() [0x00000] in
/Benutzer/Ersteller/Daten/Lanes/2923/52635947/Quelle /mono/mcs/class/System.ServiceModel/System.ServiceModel/ChannelFactory_1.cs:108 07-20 11: 35: 39.708 I/Monodroid (1452): at System.ServiceModel.ClientBase`1 [TChannel] .CreateChannel () [0x00000] in
/Benutzer/Ersteller/Daten/Lanes/2923/52635947/Quelle/Mono/m cs/class/System.ServiceModel/System.ServiceModel/ClientBase.cs: 266 07-20 11: 35: 39.708 ich/Monodroid (1452): um System.ServiceModel.ClientBase_1 [TChannel] .get_InnerChannel() [0x0000b ] in
/Users/builder/data/lanes/2923/52635947/source/mono/mcs/class/System.ServiceModel/System.ServiceModel/ClientBase.cs:186 7-20 November: 35: 39,708 I/MonoDroid (1452): at System.ServiceModel.ClientBase_1 [TChannel] .get_Channel() [0x00000] in
/Benutzer/erbauer/daten/lanes/2923/52635947/source/mono/mcs/klasse/System.ServiceModel/System.ServiceModel/ClientBase.cs: 192 07-20 11: 35: 39.708 I/Monodroid (1452): bei DataServiceClient.GetProjects (Int32 firmaid) [0x00001] in C: \ Users \ Benutzername \ doc uments \ Visual Studio 2015 \ Projects \ somethingMobileApp
\ somethingMobileAppAndroid \ DataService.cs: 10752 07-20 November: 35: 39,708 I/MonoDroid (1452): bei somethingMobileAppAndroid.MainActivity.OnCreate (Android.OS.Bundle Bündel) [0x0006d] in C: \ Benutzer \ Benutzername \ Dokumente \ Visual Studio 2015 \ Projects
\ somethingMobileApp \ somethingMobileAppAndroid \ MainActivity.cs: 50 07-20 November: 35: 39,708 D/Mono (1452): DllImport Suche in: '__Internal' ('(null)'). 07-20 11: 35: 39.712 D/Mono (1452): Suche nach 'java_interop_jnienv_new_string'. 07-20 11: 35: 39.712 D/Mono (1452): Sondierung von 'java_interop_jnienv_new_string'. 07-20 11: 35: 39.712 D/Mono (1452): Gefunden als 'java_interop_jnienv_new_string'. 07-20 11: 35: 39.716 D/Mono (1452): DllImport Suche in: '__Internal' ('(null)'). 07-20 11: 35: 39.716 D/Mono (1452): Suche nach 'java_interop_jnienv_throw'. 07-20 11: 35: 39.716 D/Mono (1452): Sondierung von 'java_interop_jnienv_throw'. 07-20 11: 35: 39.716 D/Mono (1452): Gefunden als 'java_interop_jnienv_throw'. Eine nicht behandelte Ausnahme ist aufgetreten.
07-20 11: 35: 42,112 E/Mono (1452): November 07-20: 35: 42,112 E/Mono (1452): Unbehandelte Ausnahme: November 07-20: 35: 42,112 E/mono (1452): System.NotImplementedException: Die Methode oder Operation ist nicht implementiert. 07-20 11: 35: 42,112 E/Mono (1452): at (Wrapper dynamische Methode) System.Object: c637c172-2e79-4a17-a720-5e2325d945f7 (intptr, intptr, intptr) 07-20 11:35 : 42.112 E/mono (1452): at (systemeigener Wrapper) System.Object: c637c172-2e79-4a17-a720-5e2325d945f7 (intptr, intptr, intptr) In mgmain JNI_OnLoad 07-20 11:35: 42.112 E/mono-rt (1452): [FEHLER] FATAL UNHANDLED EXCEPTION: System.NotImplementedException: Die Methode oder Operation ist nicht implementiert. 07-20 11: 35: 42,112 E/mono-rt (1452): at (Wrapper-Methode) System.Object: c637c172-2e79-4a17-a720-5e2325d945f7 (intptr, intptr, intptr) 07-20 11 : 35: 42.112 E/mono-rt (1452): at (native-to-managed) System.Object: c637c172-2e79-4a17-a720-5e2325d945f7 (intptr, intptr, intptr)
Irgendwelche Vorschläge? :)
Die Service-URL und der Benutzername/Passord sind in echtem Code in Ordnung, werden aber hier mit generischem String maskiert. – Kenneth
Ich würde empfehlen, mindestens die ersten paar Zeilen des Stack-Trace aus der Ausnahme "Die Methode oder Operation ist nicht implementiert Fehler" hinzuzufügen. Im Moment erwähnt die Frage nicht, welche bestimmte Methode oder Operation tatsächlich fehlt. –
Sehr guter Punkt. Ich werde es zum ursprünglichen Beitrag hinzufügen – Kenneth