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
- CurrentChangingEventManager.cs
- SerialErrors.cs
- IdentitySection.cs
- SpeechUI.cs
- FastEncoder.cs
- WebReferenceCollection.cs
- FlowNode.cs
- OdbcErrorCollection.cs
- ActivationServices.cs
- coordinatorscratchpad.cs
- DataBinder.cs
- TreeViewEvent.cs
- TextFormatterImp.cs
- StrokeCollection2.cs
- DetailsViewRow.cs
- MimeWriter.cs
- CodeDirectiveCollection.cs
- PerformanceCounter.cs
- SingleAnimationUsingKeyFrames.cs
- DataGridViewToolTip.cs
- ArraySubsetEnumerator.cs
- PersonalizationProviderHelper.cs
- CallSiteHelpers.cs
- SmiConnection.cs
- WSIdentityFaultException.cs
- BamlVersionHeader.cs
- GraphicsContainer.cs
- OutKeywords.cs
- HttpCapabilitiesBase.cs
- XmlSchemaIdentityConstraint.cs
- CssClassPropertyAttribute.cs
- DataControlImageButton.cs
- Resources.Designer.cs
- SizeConverter.cs
- __Error.cs
- ConfigXmlSignificantWhitespace.cs
- ListenerAdapterBase.cs
- ExportOptions.cs
- WhiteSpaceTrimStringConverter.cs
- DataGridRelationshipRow.cs
- TableItemStyle.cs
- SqlTransaction.cs
- StatusCommandUI.cs
- PaintValueEventArgs.cs
- FaultContractInfo.cs
- XhtmlBasicFormAdapter.cs
- BorderGapMaskConverter.cs
- SignedPkcs7.cs
- LinqDataSourceContextEventArgs.cs
- NeedSkipTokenVisitor.cs
- SqlDataSourceView.cs
- CellRelation.cs
- ConfigXmlAttribute.cs
- DictionarySectionHandler.cs
- BooleanAnimationBase.cs
- ChooseAction.cs
- CompositeDataBoundControl.cs
- RowToParametersTransformer.cs
- BamlCollectionHolder.cs
- ContainerActivationHelper.cs
- PenContext.cs
- CodeAttributeArgumentCollection.cs
- ChannelManager.cs
- WindowsAltTab.cs
- SqlGatherConsumedAliases.cs
- OrthographicCamera.cs
- AvTrace.cs
- altserialization.cs
- ImageDrawing.cs
- CodeTryCatchFinallyStatement.cs
- NonClientArea.cs
- VectorKeyFrameCollection.cs
- DbExpressionVisitor_TResultType.cs
- Triplet.cs
- PartBasedPackageProperties.cs
- IResourceProvider.cs
- ProfileBuildProvider.cs
- TextEditorThreadLocalStore.cs
- AutomationEvent.cs
- InputScope.cs
- OptionalRstParameters.cs
- WpfSharedBamlSchemaContext.cs
- OneOfElement.cs
- RulePatternOps.cs
- Rule.cs
- DrawingDrawingContext.cs
- XmlLanguageConverter.cs
- TypefaceMetricsCache.cs
- AppSettingsExpressionEditor.cs
- InternalConfigRoot.cs
- RegexStringValidator.cs
- WebPartCloseVerb.cs
- FixedSOMPage.cs
- StringTraceRecord.cs
- CalendarItem.cs
- DbMetaDataCollectionNames.cs
- DocumentPageViewAutomationPeer.cs
- VirtualDirectoryMapping.cs
- KeyPressEvent.cs
- unsafeIndexingFilterStream.cs