XML : xml string is not loading to dataset after validating against schema in c#

I recieve a xml from my SOAP service and I convert it to a string and validate against a schema. Validation happens smoothly but when I try to put it to a dataset to put it to my datagridview it says that root element is missing. Below is my code,

   private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)          {              XmlReaderSettings xmlReaderSttngs = new XmlReaderSettings();              XmlDocument xmlDoc = new XmlDocument();              DateTime date = dateTimePicker1.Value;              SoapWebReference.SOAPWebService SoapService= new SoapWebReference.SOAPWebService();              string xmlString = SoapService.getSchedule(instructorId, date).OuterXml.ToString();                xmlReaderSttngs.ValidationType = ValidationType.Schema;              xmlReaderSttngs.Schemas.Add("","SoapSchema.xsd");              StringReader reader = new StringReader(xmlString);              XmlReader xReader;              try              {                  xReader = XmlReader.Create(reader, xmlReaderSttngs);                  xmlDoc.Load(xReader);                  showSchedule(reader);                      }              catch (Exception ex)              {                  MessageBox.Show(ex.Message);              }                  }            private void showSchedule(StringReader reader)          {              DataSet dt = new DataSet();              dt.ReadXml(reader);              dataGridView1.DataSource = dt.Tables[0];          }    

The surprising thing is that when I load the string to the dataset without validation, it loads to the dataset and shows in the gridview. I'm confused with this, please help me to solve this.

No comments:

Post a Comment