Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / XmlSerializableServices.cs / 1305376 / XmlSerializableServices.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization { using System.Collections.Generic; using System.Xml; using System.Xml.Schema; public static class XmlSerializableServices { [Fx.Tag.SecurityNote(Miscellaneous = "RequiresReview - Static fields are marked SecurityCritical or readonly to prevent" + " data from being modified or leaked to other components in appdomain.")] internal static readonly string ReadNodesMethodName = "ReadNodes"; public static XmlNode[] ReadNodes(XmlReader xmlReader) { if (xmlReader == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("xmlReader"); XmlDocument doc = new XmlDocument(); ListnodeList = new List (); if (xmlReader.MoveToFirstAttribute()) { do { if (IsValidAttribute(xmlReader)) { XmlNode node = doc.ReadNode(xmlReader); if (node == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.UnexpectedEndOfFile))); nodeList.Add(node); } } while (xmlReader.MoveToNextAttribute()); } xmlReader.MoveToElement(); if (!xmlReader.IsEmptyElement) { int startDepth = xmlReader.Depth; xmlReader.Read(); while (xmlReader.Depth > startDepth && xmlReader.NodeType != XmlNodeType.EndElement) { XmlNode node = doc.ReadNode(xmlReader); if (node == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.UnexpectedEndOfFile))); nodeList.Add(node); } } return nodeList.ToArray(); } private static bool IsValidAttribute(XmlReader xmlReader) { return xmlReader.NamespaceURI != Globals.SerializationNamespace && xmlReader.NamespaceURI != Globals.SchemaInstanceNamespace && xmlReader.Prefix != "xmlns" && xmlReader.LocalName != "xmlns"; } internal static string WriteNodesMethodName = "WriteNodes"; public static void WriteNodes(XmlWriter xmlWriter, XmlNode[] nodes) { if (xmlWriter == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("xmlWriter"); if (nodes != null) for(int i=0;i nodeList = new List (); if (xmlReader.MoveToFirstAttribute()) { do { if (IsValidAttribute(xmlReader)) { XmlNode node = doc.ReadNode(xmlReader); if (node == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.UnexpectedEndOfFile))); nodeList.Add(node); } } while (xmlReader.MoveToNextAttribute()); } xmlReader.MoveToElement(); if (!xmlReader.IsEmptyElement) { int startDepth = xmlReader.Depth; xmlReader.Read(); while (xmlReader.Depth > startDepth && xmlReader.NodeType != XmlNodeType.EndElement) { XmlNode node = doc.ReadNode(xmlReader); if (node == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.UnexpectedEndOfFile))); nodeList.Add(node); } } return nodeList.ToArray(); } private static bool IsValidAttribute(XmlReader xmlReader) { return xmlReader.NamespaceURI != Globals.SerializationNamespace && xmlReader.NamespaceURI != Globals.SchemaInstanceNamespace && xmlReader.Prefix != "xmlns" && xmlReader.LocalName != "xmlns"; } internal static string WriteNodesMethodName = "WriteNodes"; public static void WriteNodes(XmlWriter xmlWriter, XmlNode[] nodes) { if (xmlWriter == null) throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("xmlWriter"); if (nodes != null) for(int i=0;i
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeConditionStatement.cs
- TextEndOfParagraph.cs
- SocketCache.cs
- METAHEADER.cs
- ChtmlTextBoxAdapter.cs
- SystemDropShadowChrome.cs
- AppSettingsSection.cs
- SharedStatics.cs
- CustomActivityDesigner.cs
- Bold.cs
- TemplateBuilder.cs
- DispatcherExceptionEventArgs.cs
- SelectionItemPattern.cs
- ObjectStateManagerMetadata.cs
- SemanticResultKey.cs
- DefaultBindingPropertyAttribute.cs
- HtmlElementCollection.cs
- Propagator.Evaluator.cs
- AutomationPropertyInfo.cs
- GraphicsContext.cs
- ObjectItemNoOpAssemblyLoader.cs
- login.cs
- ScriptingJsonSerializationSection.cs
- AspNetSynchronizationContext.cs
- DebuggerAttributes.cs
- WindowsRichEditRange.cs
- DataKeyPropertyAttribute.cs
- StickyNoteContentControl.cs
- SafePEFileHandle.cs
- Stroke2.cs
- CommandDevice.cs
- _SSPIWrapper.cs
- DataRecordObjectView.cs
- Base64Encoder.cs
- ObjectDisposedException.cs
- TypeSystemProvider.cs
- MeasurementDCInfo.cs
- XsdDataContractImporter.cs
- HebrewNumber.cs
- FunctionUpdateCommand.cs
- CreateCardRequest.cs
- TextChangedEventArgs.cs
- ReachSerializationUtils.cs
- Crc32.cs
- ToolTip.cs
- XamlToRtfWriter.cs
- XmlElement.cs
- ReflectionUtil.cs
- ApplicationSecurityManager.cs
- DataServiceQueryProvider.cs
- SessionStateUtil.cs
- SAPICategories.cs
- CompilationPass2Task.cs
- SqlBooleanMismatchVisitor.cs
- ProfilePropertyNameValidator.cs
- TextDpi.cs
- TransactedBatchingElement.cs
- RefreshEventArgs.cs
- DataExpression.cs
- BitmapEffectState.cs
- DataColumnMappingCollection.cs
- EffectiveValueEntry.cs
- SqlRetyper.cs
- ExpressionConverter.cs
- MatchSingleFxEngineOpcode.cs
- ViewGenResults.cs
- ListContractAdapter.cs
- RowUpdatedEventArgs.cs
- EntityClientCacheEntry.cs
- NetworkInformationException.cs
- Win32PrintDialog.cs
- ForAllOperator.cs
- SqlConnectionPoolGroupProviderInfo.cs
- RowUpdatedEventArgs.cs
- CodeAccessPermission.cs
- DomNameTable.cs
- WeakRefEnumerator.cs
- RootBrowserWindow.cs
- CustomGrammar.cs
- CompilerCollection.cs
- DBSchemaRow.cs
- SqlTypeConverter.cs
- NavigateEvent.cs
- AsymmetricSignatureFormatter.cs
- KeyboardEventArgs.cs
- DataListDesigner.cs
- ResourceReferenceKeyNotFoundException.cs
- PowerEase.cs
- HttpResponseHeader.cs
- StrongNameIdentityPermission.cs
- SystemColors.cs
- ListenerAdapterBase.cs
- BulletedListEventArgs.cs
- URLIdentityPermission.cs
- TraceXPathNavigator.cs
- WebCategoryAttribute.cs
- FormattedText.cs
- BindableTemplateBuilder.cs
- NameSpaceEvent.cs
- ExpandCollapseIsCheckedConverter.cs