В общем случае создание нового экземпляра XmlDocument
для каждого файла не должно быть проблемой. Я бы не поступил иначе, пока у вас не возникнет проблема с производительностью / памятью 1 . Но если у вас возникнут проблемы, прежде чем приступать к оптимизации, используйте профилировщик, и он покажет вам, где именно проблема.
foreach (string file in GetAllFiles("Assets/Units/"))
{
XmlDocument xFile = new XmlDocument();
xFile.Load(file);
// do something
}
1 Возможно, вы увидите выгоду, например, при повторном использовании больших массивов, но я на самом деле сомневаюсь, что вы увидите преимущество с XmlDocument
, так как загрузка нового документа все равно выделит новую память.