void IBinaryXmlElement.Write(BinaryXmlWriter writer) { var basePath = Path.GetDirectoryName(file); // Store files as relative paths foreach (var f in files) { f.RelativeFileName = Util.AbsoluteToRelativePath(basePath, f.FileName); } writer.WriteValue("files", files); // Store assemblies as relative paths var array = new string [assemblies.Count]; for (int n = 0; n < assemblies.Count; n++) { array [n] = Util.AbsoluteToRelativePath(basePath, assemblies [n]); } writer.WriteValue("assemblies", array); }