.NET XmlSerializer和小数

Jiz*_*ugu 4 .net c# 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>
</xs:element>
Run Code Online (Sandbox Code Playgroud)

当我尝试反序列化xml文件时,我收到错误:

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

只有当逗号用作分组分隔符(即87,000)时才会出现这种情况.如果我通过并删除逗号,无论何处出现错误,反序列化都可以正常工作.

我可以对xsd进行一些修改以允许逗号分组吗?或者更好的方法是在我的代码中允许它?尝试使用逗号解析我的代码中的小数点工作正常,它只是不喜欢它在xml文件中.

Joh*_*ers 7

"87,000"与该xs:decimal类型不符.

没有允许逗号的XSD类型.