59 public void Init(MemoryStream stream,
Workbook workbook, IOptions readerOptions, Action<MemoryStream, Workbook, string, IOptions, int?> inlinePluginHandler)
62 this.Workbook = workbook;
63 this.Options = readerOptions;
64 this.InlinePluginHandler = inlinePluginHandler;
77 Metadata metadata =
Workbook.WorkbookMetadata;
79 XmlDocument xr =
new XmlDocument
83 using (XmlReader reader = XmlReader.Create(stream,
new XmlReaderSettings() { XmlResolver =
null }))
86 foreach (XmlNode node
in xr.DocumentElement.ChildNodes)
88 if (node.LocalName.Equals(
"Application", StringComparison.OrdinalIgnoreCase))
90 metadata.Application = node.InnerText;
92 else if (node.LocalName.Equals(
"AppVersion", StringComparison.OrdinalIgnoreCase))
94 metadata.ApplicationVersion = node.InnerText;
96 else if (node.LocalName.Equals(
"Company", StringComparison.OrdinalIgnoreCase))
98 metadata.Company = node.InnerText;
100 else if (node.LocalName.Equals(
"Manager", StringComparison.OrdinalIgnoreCase))
102 metadata.Manager = node.InnerText;
104 else if (node.LocalName.Equals(
"HyperlinkBase", StringComparison.OrdinalIgnoreCase))
106 metadata.HyperlinkBase = node.InnerText;
115 throw new NanoXLSX.Exceptions.IOException(
"The XML entry could not be read from the input stream. Please see the inner exception:", ex);