• <tfoot id='EBMcm'></tfoot>

        <bdo id='EBMcm'></bdo><ul id='EBMcm'></ul>

        <legend id='EBMcm'><style id='EBMcm'><dir id='EBMcm'><q id='EBMcm'></q></dir></style></legend>

        <small id='EBMcm'></small><noframes id='EBMcm'>

        <i id='EBMcm'><tr id='EBMcm'><dt id='EBMcm'><q id='EBMcm'><span id='EBMcm'><b id='EBMcm'><form id='EBMcm'><ins id='EBMcm'></ins><ul id='EBMcm'></ul><sub id='EBMcm'></sub></form><legend id='EBMcm'></legend><bdo id='EBMcm'><pre id='EBMcm'><center id='EBMcm'></center></pre></bdo></b><th id='EBMcm'></th></span></q></dt></tr></i><div id='EBMcm'><tfoot id='EBMcm'></tfoot><dl id='EBMcm'><fieldset id='EBMcm'></fieldset></dl></div>
      1. 为什么 xsd.exe 会为 xs:integer 生成字符串属性?

        时间:2023-06-04

            <i id='X3yCV'><tr id='X3yCV'><dt id='X3yCV'><q id='X3yCV'><span id='X3yCV'><b id='X3yCV'><form id='X3yCV'><ins id='X3yCV'></ins><ul id='X3yCV'></ul><sub id='X3yCV'></sub></form><legend id='X3yCV'></legend><bdo id='X3yCV'><pre id='X3yCV'><center id='X3yCV'></center></pre></bdo></b><th id='X3yCV'></th></span></q></dt></tr></i><div id='X3yCV'><tfoot id='X3yCV'></tfoot><dl id='X3yCV'><fieldset id='X3yCV'></fieldset></dl></div>
            • <small id='X3yCV'></small><noframes id='X3yCV'>

            • <legend id='X3yCV'><style id='X3yCV'><dir id='X3yCV'><q id='X3yCV'></q></dir></style></legend>
                • <bdo id='X3yCV'></bdo><ul id='X3yCV'></ul>
                  <tfoot id='X3yCV'></tfoot>
                    <tbody id='X3yCV'></tbody>
                • 本文介绍了为什么 xsd.exe 会为 xs:integer 生成字符串属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  限时送ChatGPT账号..

                  当我使用 xsd.exe 从 xsd 架构生成 c# 类时,我发现这种行为有点奇怪.

                  When I generate a c# class from a xsd schema with xsd.exe I find this behaivor a bit wierd.

                  我的元素:

                  <xs:element name="InvoiceNo" type="xs:integer"/>
                  

                  生成到:

                  [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=5)]
                  public string InvoiceNo
                  {
                     ...
                  }
                  

                  为什么该属性没有生成为 int 而不是 string?

                  Why is that property not generated as an int instead of string?

                  推荐答案

                  这种行为是设计使然:

                  xs:integer 类型被指定为没有大小写的数字受限于它的大小.因此,XML 序列化和验证将其映射到 System.Int32 类型.相反,XML 序列化将 xs:integer 映射到字符串,而验证将其映射到Decimal 类型,远大于.NET 框架

                  The xs:integer type is specified as a number with no upper or lower bound on its size. For this reason, neither XML serialization nor validation map it to the System.Int32 type. Instead, XML serialization maps the xs:integer to a string while validation maps it to the Decimal type that is much larger than any of the integer types in the .NET Framework

                  使用 xs:int,它是一个有符号的 32 位整数,具有 Xsd.exe 将其映射到 System.Int32:

                  Use xs:int, which is a signed 32-bit integer, to have Xsd.exe map it to a System.Int32:

                  <xs:element name="InvoiceNo" type="xs:int" />
                  

                  这里是 XML 架构定义标准中定义的数据类型的详细列表.

                  Here's a detailed list of the data types defined in the XML Schema Definition standard.

                  这篇关于为什么 xsd.exe 会为 xs:integer 生成字符串属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:如何将 XSD 文件转换为 C# 类 下一篇:使用 xsd.exe 生成 c# 文件,出现错误和警告

                  相关文章

                  最新文章

                    <small id='1lPkM'></small><noframes id='1lPkM'>

                      <bdo id='1lPkM'></bdo><ul id='1lPkM'></ul>
                    <tfoot id='1lPkM'></tfoot>

                      <legend id='1lPkM'><style id='1lPkM'><dir id='1lPkM'><q id='1lPkM'></q></dir></style></legend>
                    1. <i id='1lPkM'><tr id='1lPkM'><dt id='1lPkM'><q id='1lPkM'><span id='1lPkM'><b id='1lPkM'><form id='1lPkM'><ins id='1lPkM'></ins><ul id='1lPkM'></ul><sub id='1lPkM'></sub></form><legend id='1lPkM'></legend><bdo id='1lPkM'><pre id='1lPkM'><center id='1lPkM'></center></pre></bdo></b><th id='1lPkM'></th></span></q></dt></tr></i><div id='1lPkM'><tfoot id='1lPkM'></tfoot><dl id='1lPkM'><fieldset id='1lPkM'></fieldset></dl></div>