Unable to generate a temporary class (result=1). error CS0030: Cannot convert type 'Type[]' to 'Type'?

前端 未结 7 1527
无人共我
无人共我 2020-12-04 23:16

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

相关标签:
7条回答
  • 2020-12-05 00:06

    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

    0 讨论(0)
  • 2020-12-05 00:08

    If its in VB.net then you got to search for ()() in your Reference.vb and replace with()

    0 讨论(0)
  • 2020-12-05 00:10

    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..

    0 讨论(0)
  • 2020-12-05 00:11

    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. :)

    0 讨论(0)
  • 2020-12-05 00:11

    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.

    0 讨论(0)
  • 2020-12-05 00:11

    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.

    0 讨论(0)
提交回复
热议问题