我有測試的xml文件,看起來像這樣:如何忽略xml命名空間?
<Person>
<ContactInfo>
...
<ContactInfo>
</Person>
當我嘗試反序列化,一切工作正常。 但問題是,有時這個XML文件的結構是不同的 - 有時會添加XML名稱空間。
<Person xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<ContactInfo>
...
<ContactInfo>
</Person>
現在,當我序列化時,我得到IOnvalidOperationException:「XML文檔(1,2)有錯誤」。內部異常消息表明<Person xmlns='http://tempuri.org/PaymentInformationXml.xsd'>
不是預期的。
那麼有人能幫助我嗎?
你用什麼來反序列化? –
您的示例XML和錯誤消息不一致; xsi/xsd只是名稱空間別名 - 它們不會更改任何內容。你可以非常忽略這兩個。然而,'xmlns ='... blah ...''非常重要。請澄清:這是否在您的XML或不?如果是,則必須提前告知XmlSerializer –