2017-01-12 2 views
0

私はXMLファイルに保存しているXMLのテキストを返すAPIを使用しています。 情報をdatagridviewに表示しようとしているときはいつでも。しかし、ファイルがすでに開いていて使用されているというエラーが表示されます。テキストを受け取ってXMLに保存し、それをDataGridに表示しようとするコードがあります。XMLファイルからdatagridviewへC#

 using (WebResponse response = request.GetResponse()) 
     { 
      using (Stream stream = response.GetResponseStream()) 
      { 
       using (StreamReader sr99 = new StreamReader(stream)) 
       { 
        responseContent = sr99.ReadToEnd(); 
       } 
      } 
     } 
     XmlDocument doc = new XmlDocument(); 
     doc.LoadXml(responseContent); 
     XmlWriterSettings settings = new XmlWriterSettings(); 
     settings.Indent = true; 
     // Save the document to a file and auto-indent the output. 
     XmlWriter writer = XmlWriter.Create("ResponseContent.xml", settings); 
     doc.Save(writer); 



     XmlReader xmlFile = XmlReader.Create(@"C:\Users\Tyler\Documents\Repo\New Trunk\WalmartSmiles\WalmartSmiles\bin\Debug\ResponseContent.xml", new XmlReaderSettings()); 
     DataSet dataSet = new DataSet(); 
     //Read xml to dataset 
     dataSet.ReadXml("ResponseContent.xml"); 
     //Pass empdetails table to datagridview datasource 
     dataGridView1.DataSource = dataSet.Tables["ns2:feed"]; 
     //Close xml reader 
     xmlFile.Close(); 

答えて

1
XmlReader xmlFile ; 
xmlFile = XmlReader.Create("Product.xml", new XmlReaderSettings()); 
DataSet ds = new DataSet(); 
ds.ReadXml(xmlFile); 
dataGridView1.DataSource = ds.Tables[0]; 

DataGridViewの

へのパスデータの簡単な方法
0

通常、このような場合は、コード内でそのファイルを開いたり、読んだり、書き込んだり、完了したものを探して閉じてください。

// Save the document to a file and auto-indent the output. 
    XmlWriter writer = XmlWriter.Create("ResponseContent.xml", settings); 
    doc.Save(writer); 
    writer.Close(); 
関連する問題