2014-09-29 59 views
0

我發佈了一個xml數據從桌面應用程序到asp.net wep頁面。我可以在網頁上閱讀XML,但是如果我將頁面重定向到另一個頁面,則在桌面應用程序中出現錯誤。我的代碼如下。 感謝您的幫助。asp.net post xml重定向頁面

桌面應用:

static void Main(string[] args) 
    { 
     post(); 

     Console.WriteLine("Post process is successed..."); 
     Console.Read(); 
    } 

    private static void post() { 
     System.Net.WebRequest req = null; 
     System.Net.WebResponse rsp = null; 
     try { 
      req = System.Net.WebRequest.Create("http://localhost:5318/Account/XMLReader.aspx"); 
      req.Method = "POST"; 
      req.ContentType = "text/xml"; 

      StreamWriter writer = new System.IO.StreamWriter(req.GetRequestStream()); 
      writer.WriteLine(getXmlData()); 
      writer.Flush(); 
      writer.Close(); 

      rsp = req.GetResponse(); 
     } catch { 
      throw; 
     } finally { 
      if (req != null) req.GetRequestStream().Close(); // *****Error occures here**** 
      if (rsp != null) rsp.GetResponseStream().Close(); 
     } 
    } 

asp.net頁面代碼:

protected void Page_Load(object sender, EventArgs e) 
    { 
     Page.Response.ContentType = "text/xml"; 
     System.IO.StreamReader reader = 
     new System.IO.StreamReader(Page.Request.InputStream); 
     String xmlData = reader.ReadToEnd(); 

     Response.Redirect("/Account/Login.aspx"); 
    } 
+1

請註明你會得到什麼錯誤? – Izzy 2014-09-29 09:09:51

回答

0

試試這個代碼:

private static void post() 
     { 
      System.Net.WebRequest req = null; 
      System.Net.WebResponse rsp = null; 
      Stream newStream = null; 
      try 
      { 
       req = System.Net.WebRequest.Create("http://localhost:39384/Default.aspx"); 
       req.Method = "POST"; 
       req.ContentType = "text/xml"; 

       newStream = req.GetRequestStream(); 
       StreamWriter writer = new System.IO.StreamWriter(newStream); 
       writer.WriteLine("ddd"); 
       writer.Flush(); 
       writer.Close(); 

       rsp = req.GetResponse(); 
      } 
      catch(Exception e) 
      { 
       throw; 
      } 
      finally 
      { 
       if (req != null) newStream.Close(); // *****Error occures here**** 
       if (rsp != null) rsp.GetResponseStream().Close(); 
      } 
     }