我們有一個VXML項目,第三方解析它來爲我們提供電話導航系統。我們要求他們輸入一個ID代碼來留言,這是我們公司後來審查的。關於XMLTextWriters和Streams的問題
目前,我們有這方面的工作如下:
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Stream m = new MemoryStream(); //Create Memory Stream - Used to create XML document in Memory
XmlTextWriter XML_Writer = new XmlTextWriter(m, System.Text.Encoding.UTF8);
XML_Writer.Formatting = Formatting.Indented;
XML_Writer.WriteStartDocument();
/* snip - writing a valid XML document */
XML_Writer.WriteEndDocument();
XML_Writer.Flush();
m.Position = 0;
byte[] b = new byte[m.Length];
m.Read(b, 0, (int)m.Length);
XML_Writer.Close();
HttpContext.Current.Response.Write(System.Text.Encoding.UTF8.GetString(b, 0, b.Length));
我只是保持這個程序,我沒有寫它......但最後的部分似乎令人費解給我。
我知道它正在輸出流並將寫入的XML送入它......但爲什麼它首先讀取整個字符串?這不是沒有效率嗎?
有沒有更好的方法來編寫上面的代碼?
是的,應該這樣做 – 2008-09-30 19:57:03