2016-08-10 9 views
0

このアプリケーションは、データを返すAPIに要求を送信します。私はそのデータをxmlファイルに保存したいと思います。 問題は、アプリケーションを実行するたびに新しいxmlファイルを作成し、現在の "c:\ temp \ xml.xml"を置き換えないことです。私は20160810.xmlを1つ必要とするのではなく、私はアプリケーションを実行する翌日20160811.xmlという名前の別のXMLファイルが必要になることをお勧めします。それ、どうやったら出来るの?いくつかのXMLファイルを作成し、それらにタグを付ける方法はありますか?

static void Main(string[] args) 
    { 
     RunAsync().Wait(); 
    } 

    static async Task RunAsync() 
    { 
     using (var client = new HttpClient()) 
     { 
      //Send HTTPrequest 
      client.BaseAddress = new Uri("http://xxxxx"); 
      client.DefaultRequestHeaders.Accept.Clear(); 
      client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 

      HttpResponseMessage response = await client.GetAsync("api/people/peoples?Firstname=Adam"); 

      if (response.IsSuccessStatusCode) 
      { 
       var person = response.Content.ReadAsAsync<IEnumerable<Persons>>().Result; 

       XmlDocument xmldoc = new XmlDocument(); 
       foreach (var i in person) 
       { 
        XmlElement el = (XmlElement)xmldoc.AppendChild(xmldoc.CreateElement("Employee")); 
        el.SetAttribute("EmployeeID", i.Peopleid); 
        el.AppendChild(xmldoc.CreateElement("Firstname")).InnerText = i.FirstName; 
        el.AppendChild(xmldoc.CreateElement("Lastname")).InnerText = i.LastName; 
        el.AppendChild(xmldoc.CreateElement("Address")).InnerText = i.LocationName; 

        Console.WriteLine("{0}\t{1}:\t{2}\t-{3}", i.FirstName, i.LastName, i.Peopleid, i.LocationName); 
        xmldoc.Save("c:\\temp\\xml.xml"); 
       } 

      } 
     } 


    } 

class Persons 
{ 
    public string Peopleid { get; set; } 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public string LocationName { get; set; } 


} 
+0

にあなたの節約を修正? – Tomalak

答えて

0

DateTime.Nowだからあなたの質問には「私はC#で文字列に現在の日付を変換するにはどうすればよい」で現在の日付と時間を与えるので、

xmldoc.Save("c:\\temp\\"+DateTime.Now.ToString("yyyyMMdd") + ".xml"); 
関連する問題