C# .NET XmlSerializer和小数

C# .NET XmlSerializer和小数,c#,.net,xml,xsd,C#,.net,Xml,Xsd,我在远程xsd文件上使用xsd.exe来生成一些C#类定义。一种类型定义为 <xs:element name="amount"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:fractionDigits value="2"/> </xs:restriction> </xs:simpleType&

我在远程xsd文件上使用xsd.exe来生成一些C#类定义。一种类型定义为

<xs:element name="amount">
    <xs:simpleType>
        <xs:restriction base="xs:decimal">
            <xs:fractionDigits value="2"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>
只有当使用逗号作为分组分隔符(即87000)时,才会出现这种情况。如果我在出现错误的地方遍历并删除逗号,反序列化可以正常工作

是否可以对xsd进行一些修改以允许逗号分组?或者更好的方法是在我的代码中允许它?尝试在我的代码中用逗号解析十进制很好,只是不喜欢xml文件中的十进制。

“87000”与
xs:decimal
类型不匹配


没有允许逗号的XSD类型。

此数据类型的定义对此数据类型下允许的数字大小没有任何限制。除非表单处理准备处理数千位(甚至更长)的数字,否则应限制允许的上限和下限,以及超过小数点的位数

There is an error in XML document (30, 12). ---> System.FormatException: Input string was not in a correct format.