Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
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
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.
Mono 2.10.8, monodevelop 126.96.36.199, Monotouch 5.2.4
Not sure if this is a bug or a genuine feature limitation but I have a return from a SOAP call that doesnt seem to be handled correctly (gives a runtime error).
The problem appears to lie within XmlSerializationReader.cs in the ReadList function at around line 550. During variable setup this function attempts to parse an XML Qualified Name to work out the number of parameters its going to be returning. When presented with the following name:
it correctly identifies the start of the parameter array bounds at the open-square-bracket, but the following lines include an attempt to turn the value inside the square-brackets into an integer.
This will work on a single-dimension (eg, ) but on a multiple dimension it will try and parse something along the lines of "2,5" into an integer, causing the runtime error.
What would be ideal here would be an elaborate nesting of parameter creation to produce a multi=dimensional output however any valid output would be usable, even if its a single dimension array containing semi-processed output. Semi-processed output could probably be quickly solved by trapping for a comma and only using the first dimension parameter (eg the "2" in "2,5").
Hope this helps.
Do you have a test case where we can reproduce it? It would likely speed up a fix (since we don't have to create a test case first).
While researching a simple way of making a test case on this, I came across an article about .NETs XML Serializer and its limitations, they mentioned only one dimension there so it looks like a genuine limitation. Ive coded around it by adding a serverside call to return the information as a single dimension.
Unless anyone thinks this should be kept open for producing a non-descript error message, I guess this can be closed.
Closing (genuine limitation as stated in comment #2).