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
- CodeVariableDeclarationStatement.cs
- MetadataFile.cs
- DataGridViewCheckBoxCell.cs
- CoreSwitches.cs
- Constants.cs
- OSFeature.cs
- AncestorChangedEventArgs.cs
- ResourceLoader.cs
- DiscardableAttribute.cs
- SqlLiftWhereClauses.cs
- NotifyInputEventArgs.cs
- BuildResultCache.cs
- TranslateTransform.cs
- rsa.cs
- RawKeyboardInputReport.cs
- MemberProjectionIndex.cs
- XmlMembersMapping.cs
- SqlAliaser.cs
- SupportingTokenChannel.cs
- AsyncPostBackTrigger.cs
- TableDetailsRow.cs
- UniqueIdentifierService.cs
- PackWebRequestFactory.cs
- FilteredDataSetHelper.cs
- PropertyDescriptor.cs
- StaticFileHandler.cs
- ServiceHttpModule.cs
- SchemaTableColumn.cs
- MailBnfHelper.cs
- documentsequencetextpointer.cs
- Rotation3D.cs
- XmlNodeChangedEventArgs.cs
- XPathSingletonIterator.cs
- RegexFCD.cs
- ColumnWidthChangingEvent.cs
- CombinedGeometry.cs
- ComplexTypeEmitter.cs
- AsymmetricKeyExchangeFormatter.cs
- Socket.cs
- SoapReflectionImporter.cs
- HostVisual.cs
- EncoderExceptionFallback.cs
- TypeExtensions.cs
- HttpResponseWrapper.cs
- MatrixValueSerializer.cs
- MultipartContentParser.cs
- UTF8Encoding.cs
- RoleManagerSection.cs
- ZipPackage.cs
- COM2Enum.cs
- DetailsViewModeEventArgs.cs
- PolicyManager.cs
- UnmanagedMarshal.cs
- CloudCollection.cs
- SQLInt16.cs
- StylusOverProperty.cs
- DataGridViewCellParsingEventArgs.cs
- WinEventQueueItem.cs
- EmbeddedMailObject.cs
- HMACSHA512.cs
- BackgroundWorker.cs
- Logging.cs
- WorkflowViewManager.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- DropDownList.cs
- DiagnosticTrace.cs
- FileDialog_Vista_Interop.cs
- AsymmetricSignatureDeformatter.cs
- Error.cs
- SoapExtensionReflector.cs
- Pair.cs
- ToReply.cs
- EqualityArray.cs
- ListDictionaryInternal.cs
- MatrixTransform.cs
- Margins.cs
- WebScriptMetadataFormatter.cs
- BitConverter.cs
- DispatcherSynchronizationContext.cs
- CreateUserWizard.cs
- SimpleRecyclingCache.cs
- TreeViewAutomationPeer.cs
- IsolatedStorageFile.cs
- GridViewUpdateEventArgs.cs
- FindCompletedEventArgs.cs
- Process.cs
- InstanceCreationEditor.cs
- StyleBamlRecordReader.cs
- GridViewSortEventArgs.cs
- DateTimeParse.cs
- MetadataPropertyCollection.cs
- DoubleAnimationUsingPath.cs
- TypeBuilderInstantiation.cs
- WSFederationHttpSecurityMode.cs
- MergablePropertyAttribute.cs
- QilGeneratorEnv.cs
- SamlAssertionDirectKeyIdentifierClause.cs
- SecurityException.cs
- StylusPointPropertyInfo.cs
- AnnotationService.cs