@@ -44,6 +44,8 @@ internal XmlDocument PropertiesXml
4444 }
4545 internal ExcelCustomXml ( )
4646 {
47+ SchemasReferences = [ Schemas . schemaDataMashup ] ;
48+ CustomXml = new XmlDocument ( ) ;
4749 }
4850 internal ExcelCustomXml ( ZipPackagePart part )
4951 {
@@ -107,6 +109,7 @@ internal void Save(ExcelPackage pck)
107109 var nsm = CreateNsm ( ) ;
108110 _xmlHelper = XmlHelperFactory . Create ( nsm , PropertiesXml . DocumentElement . SelectSingleNode ( "ds:schemaRefs" , nsm ) ) ;
109111 }
112+
110113 if ( _xmlHelper != null )
111114 {
112115 _xmlHelper . TopNode . InnerXml = "" ;
@@ -117,15 +120,21 @@ internal void Save(ExcelPackage pck)
117120 _xmlHelper . TopNode . AppendChild ( schemaRefNode ) ;
118121 }
119122 }
120- var xmlSettings = new XmlWriterSettings ( ) ;
121123
122- var stream = Part . GetStream ( FileMode . Create , FileAccess . Write ) ;
123- var xmlWriter = XmlWriter . Create ( stream , xmlSettings ) ;
124- CustomXml . Save ( xmlWriter ) ;
124+ var xmlSettings = new XmlWriterSettings ( ) ;
125125
126- stream = PropertiesPart . GetStream ( FileMode . Create , FileAccess . Write ) ;
127- xmlWriter = XmlWriter . Create ( stream , xmlSettings ) ;
128- PropertiesXml . Save ( xmlWriter ) ;
126+ if ( Part != null )
127+ {
128+ var stream = Part . GetStream ( FileMode . Create , FileAccess . Write ) ;
129+ var xmlWriter = XmlWriter . Create ( stream , xmlSettings ) ;
130+ CustomXml . Save ( xmlWriter ) ;
131+ }
132+ if ( PropertiesPart != null )
133+ {
134+ var stream = PropertiesPart . GetStream ( FileMode . Create , FileAccess . Write ) ;
135+ var xmlWriter = XmlWriter . Create ( stream , xmlSettings ) ;
136+ PropertiesXml . Save ( xmlWriter ) ;
137+ }
129138 }
130139 }
131140}
0 commit comments