I get this error after I created a class from my xsd file using the xsd.exe tool. So I searched the net and found a solution. Here is the link: http://satov.blogspot.com/200
For me it helps to patch the XML used to generate the code. It happens when:
<Names>
<Name></Name>
<Name></Name>
</Names>
then this is optimized by xsd to double array name entry
What I did is:
<Names>
<Dummy></Dummy>
<Name></Name>
<Name></Name>
</Names>
the xsd doesn't optimize it but leaves the single array name
If its in VB.net then you got to search for ()() in your Reference.vb and replace with()
I got this error.In your solution there is reference.cs file in that file you need to search "[][]" and then there will be two results in it..
After you need to remove one "[]" from "[][]" from both places..
It works for me..
Thanks..
You need to change the type of a member variable in the serialized class. For example if its raising an error like:
Unable to generate a temporary class (result=1). error CS0030: Cannot convert type 'Data[]' to 'Data'.
I ran a search on the Data type name in the generated file, and I found this:
[System.Xml.Serialization.XmlArrayItemAttribute("Data", typeof(Data), IsNullable=false)]
public Data[][] Row
Replace Data[][]
with Data[]
- Change the type of Data from a 2D array to a 1D array. It would solve your problem. :)
Had the same problem, but Xsd2Code didn't integrate with VS2012. So instead I went to my xsd.exe generated .cs file and did:
Find [][] Replace []
which worked.
Add <xs:attribute name="tmp" type="xs:string" />
after every
<xs:sequence maxOccurs="unbounded">
<xs:element ../>
</xs:sequence>
and
<xs:sequence>
<xs:element maxOccurs="unbounded"/>
</xs:sequence>
element in your schema file if you don't want to loose dimension of the array.