Bug 18578 - Data corruption issue in SOAP response with binaryMessageEncoding
Summary: Data corruption issue in SOAP response with binaryMessageEncoding
Alias: None
Product: Android
Classification: Xamarin
Component: Mono runtime / AOT Compiler ()
Version: 4.12.0
Hardware: PC Windows
: Normal normal
Target Milestone: ---
Assignee: Martin Baulig
Depends on:
Reported: 2014-03-25 15:12 UTC by Bill Reiss
Modified: 2016-11-11 09:43 UTC (History)
2 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Bill Reiss 2014-03-25 15:12:33 UTC
When interacting with a WCF SOAP service with binaryMessageEncoding enabled, float values that are negative whole numbers are returned as the expected number plus 256. We noticed this first with a -100 value coming back as 156, and then with -1 coming back as 255, and tried with other values to the same effect. If the number is positive, or if it is negative but not a whole number, the value coms back properly. This happened with nullable float values but I'm pretty sure we reproduced this with non-nullable float values as well. 

Originally observed when calling the web service from a PCL but also confirmed with adding the web service directly to the Android project as a possible workaround, but it had the same issue.

If binaryMessageEncoding is turned off on the WCF service, the values come back correctly as well, so it seems to specifically be an issue with whole negative float values with binary deserialization.
Comment 1 Shruti 2014-03-27 03:14:40 UTC
I am not able to consume the WCF service in my Android Project. I have reported a bug for same issue. Bug Id is Bug 18591 .I will check it when reported issue get resolved.
Comment 2 Martin Baulig 2016-11-11 09:43:46 UTC
Closing ancient bugs, please reopen if you're still having this problem.