2011-09-07 59 views
0

我有一個XML字符串,它是從基於Visual Fox Pro的COM對象輸出的,我試圖讀入DataSet。當我這樣做時,它會引發異常「The string」不是有效的AllXsd值。「異常字符串''不是有效的AllXsd值。當試圖通過ReadXML從XML字符串獲取數據集

基於谷歌搜索和堆棧溢出搜索這通常是日期格式的問題。我確實有一個類型爲datetime的字段「已更改」,但是我沒有在該字段中具有任何數據的XML中的任何記錄。假設字段導致問題,並且我從不需要來自該字段的數據,我如何告訴它忽略該字段中的數據或將其視爲字符串或其他內容。

這裏是有問題的XML:

<?xml version = "1.0" encoding="Windows-1252" standalone="yes"?> 
<VFPData> 
    <xsd:schema id="VFPData" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> 
     <xsd:element name="VFPData" msdata:IsDataSet="true"> 
      <xsd:complexType> 
       <xsd:choice maxOccurs="unbounded"> 
        <xsd:element name="v_issue2" minOccurs="0" maxOccurs="unbounded"> 
         <xsd:complexType> 
          <xsd:sequence> 
           <xsd:element name="issue2id" type="xsd:int"/> 
           <xsd:element name="issueid" type="xsd:int"/> 
           <xsd:element name="materielid" type="xsd:int"/> 
           <xsd:element name="nsn"> 
            <xsd:simpleType> 
             <xsd:restriction base="xsd:string"> 
              <xsd:maxLength value="14"/> 
             </xsd:restriction> 
            </xsd:simpleType> 
           </xsd:element> 
           <xsd:element name="nomen"> 
            <xsd:simpleType> 
             <xsd:restriction base="xsd:string"> 
              <xsd:maxLength value="35"/> 
             </xsd:restriction> 
            </xsd:simpleType> 
           </xsd:element> 
           <xsd:element name="qty" type="xsd:int"/> 
           <xsd:element name="serialized" type="xsd:boolean"/> 
           <xsd:element name="sewn" type="xsd:boolean"/> 
           <xsd:element name="tamid" type="xsd:int" minOccurs="0"/> 
           <xsd:element name="qty_return" type="xsd:int"/> 
           <xsd:element name="qty_lost" type="xsd:int"/> 
           <xsd:element name="qty_bo" type="xsd:int"/> 
           <xsd:element name="matlocid" type="xsd:int" minOccurs="0"/> 
           <xsd:element name="changed" type="xsd:dateTime"/> 
           <xsd:element name="need_ldy" type="xsd:boolean" minOccurs="0"/> 
           <xsd:element name="lotcontrol"> 
            <xsd:simpleType> 
             <xsd:restriction base="xsd:string"> 
              <xsd:maxLength value="1"/> 
             </xsd:restriction> 
            </xsd:simpleType> 
           </xsd:element> 
           <xsd:element name="location" minOccurs="0"> 
            <xsd:simpleType> 
             <xsd:restriction base="xsd:string"> 
              <xsd:maxLength value="13"/> 
             </xsd:restriction> 
            </xsd:simpleType> 
           </xsd:element> 
           <xsd:element name="backordid" type="xsd:int"/> 
           <xsd:element name="accessories" minOccurs="0"> 
            <xsd:simpleType> 
             <xsd:restriction base="xsd:string"> 
              <xsd:maxLength value="2147483647"/> 
             </xsd:restriction> 
            </xsd:simpleType> 
           </xsd:element> 
          </xsd:sequence> 
         </xsd:complexType> 
        </xsd:element> 
       </xsd:choice> 
       <xsd:anyAttribute namespace="http://www.w3.org/XML/1998/namespace" processContents="lax"/> 
      </xsd:complexType> 
     </xsd:element> 
    </xsd:schema> 
    <v_issue2> 
     <issue2id>35571504</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5238</materielid> 
     <nsn>8405015299330</nsn> 
     <nomen>DESERT 8 POINT XXS</nomen> 
     <qty>2</qty> 
     <serialized>false</serialized> 
     <sewn>true</sewn> 
     <tamid>120</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol>N</lotcontrol> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571492</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>7483</materielid> 
     <nsn>132510KIT4000</nsn> 
     <nomen>BELT KIT</nomen> 
     <qty>1</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571493</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>6415</materielid> 
     <nsn>8420011121473</nsn> 
     <nomen>T-SHIRTS, BROWN COTTON XS</nomen> 
     <qty>9</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571494</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>524</materielid> 
     <nsn>8415012279547</nsn> 
     <nomen>POLY PRO UNDERSHIRT, XS</nomen> 
     <qty>2</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571495</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>530</materielid> 
     <nsn>8415012279543</nsn> 
     <nomen>POLY PRO DRAWER, SM</nomen> 
     <qty>2</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571496</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>7244</materielid> 
     <nsn>8415015394045</nsn> 
     <nomen>GORTEX FLEECE LINER XS/R</nomen> 
     <qty>1</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571497</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>6422</materielid> 
     <nsn>8430014939165</nsn> 
     <nomen>BOOTS, HW STEEL TOE, DESERT 3N</nomen> 
     <qty>2</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571498</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5301</materielid> 
     <nsn>8440015083357</nsn> 
     <nomen>SOCKS, MOIST MGT XS</nomen> 
     <qty>9</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571499</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5461</materielid> 
     <nsn>8415014753633</nsn> 
     <nomen>DESERT CW TROUSERS XS XS</nomen> 
     <qty>1</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571500</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5445</materielid> 
     <nsn>8415014702065</nsn> 
     <nomen>DESERT CW PARKA XS XS</nomen> 
     <qty>1</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571501</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5447</materielid> 
     <nsn>8415013275324</nsn> 
     <nomen>DCU DESERT TROUSER XS-XS</nomen> 
     <qty>4</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571502</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5285</materielid> 
     <nsn>8415014863298</nsn> 
     <nomen>DCU DESERT BLOUSE XS XXS</nomen> 
     <qty>4</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
    <v_issue2> 
     <issue2id>35571503</issue2id> 
     <issueid>2772562</issueid> 
     <materielid>5244</materielid> 
     <nsn>8415013274828</nsn> 
     <nomen>DCU DESERT SUN HAT 6-1/2</nomen> 
     <qty>2</qty> 
     <serialized>false</serialized> 
     <sewn>false</sewn> 
     <tamid>0</tamid> 
     <qty_return>0</qty_return> 
     <qty_lost>0</qty_lost> 
     <qty_bo>0</qty_bo> 
     <matlocid>0</matlocid> 
     <changed/> 
     <need_ldy>false</need_ldy> 
     <lotcontrol/> 
     <location/> 
     <backordid>0</backordid> 
     <accessories/> 
    </v_issue2> 
</VFPData> 

回答

0

我把它用XMLReadMode.InferSchema工作,我認爲現在是處理該元素爲某種類型不是日期等。

MyDataSet.ReadXml(MyXMLStringReader, XmlReadMode.InferSchema); 
相關問題