Étant donné une méthoderefactoring question
public static string[] Foo(System.IO.Stream stream)
{
XmlTextWriter xmlWriter = new XmlTextWriter(stream, System.Text.Encoding.ASCII);
xmlWriter.WriteStartDocument();
xmlWriter.WriteStartElement("Element");
xmlWriter.WriteEndElement();
xmlWriter.WriteEndDocument();
xmlWriter.Flush();
return new string[3]{"1", "2", "3"};
}
et un code d'appel
using(MemoryStream memStream = new MemoryStream())
{
string[] playerIDs = PlayerCommand.Foo(stream);
// do some stuff with stream and playerIDs
}
Lorsque le contrôle passe de la directive à l'aide, est-il un problème qui xmlwriter n'a pas été explicitement fermée Foo (qui rendrait le flux inutile)?
En outre, passe un flux entre les méthodes peu recommandables, est-il un meilleur moyen de renvoyer les résultats de XMLWriting au code appelant (qui le zippera et le classera loin)?
Merci à l'avance, Greg
Oui, bon point. –
Quelles autres réponses :) LOL –
J'ai choisi de ne pas passer le xmldocument parce que je pensais que je devais l'enregistrer avant de pouvoir le compresser avec ICSharpCode.SharpZipLib.Zip. Peut-être que c'est faux? –