Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / XmlSerializableServices.cs / 1 / XmlSerializableServices.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Reflection; using System.Text; using System.Xml; using System.Xml.Serialization; using System.Xml.Schema; using System.Xml.XPath; using System.Security; namespace System.Runtime.Serialization { public static class XmlSerializableServices { ////// Review - Static fields are marked SecurityCritical or readonly to prevent /// data from being modified or leaked to other components in appdomain. /// [SecurityRequiresReview] 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
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SmtpNtlmAuthenticationModule.cs
- CachedCompositeFamily.cs
- UnsafeNativeMethods.cs
- DecimalConstantAttribute.cs
- DbConnectionPool.cs
- CodeAttributeDeclaration.cs
- ConstNode.cs
- coordinatorscratchpad.cs
- BinaryConverter.cs
- StringAnimationUsingKeyFrames.cs
- DateBoldEvent.cs
- CodeFieldReferenceExpression.cs
- HttpListenerResponse.cs
- FixedPageAutomationPeer.cs
- NativeMethods.cs
- SmtpFailedRecipientException.cs
- ReaderOutput.cs
- LoadRetryConstantStrategy.cs
- DefaultValueConverter.cs
- DependencyPropertyKind.cs
- XPathExpr.cs
- DataServiceHostFactory.cs
- QueryStringParameter.cs
- VScrollBar.cs
- SelectionHighlightInfo.cs
- AmbientLight.cs
- ReferencedAssembly.cs
- ToolStripHighContrastRenderer.cs
- ImageInfo.cs
- ProcessModelInfo.cs
- ColumnResult.cs
- MemberMaps.cs
- activationcontext.cs
- ManagementException.cs
- SystemIPInterfaceStatistics.cs
- EmptyStringExpandableObjectConverter.cs
- SiteMapSection.cs
- NullableDecimalAverageAggregationOperator.cs
- FileDialogCustomPlacesCollection.cs
- CompositeCollectionView.cs
- RenderOptions.cs
- DataTableTypeConverter.cs
- SQlBooleanStorage.cs
- TypedColumnHandler.cs
- SortFieldComparer.cs
- CommandLineParser.cs
- StrokeCollectionDefaultValueFactory.cs
- BrowserCapabilitiesFactory.cs
- DockAndAnchorLayout.cs
- SqlError.cs
- DataGridRowEventArgs.cs
- EndpointDispatcherTable.cs
- SqlGenericUtil.cs
- DataListItemCollection.cs
- ReadOnlyState.cs
- CodeMethodMap.cs
- TableLayoutSettings.cs
- FolderLevelBuildProviderCollection.cs
- ApplicationGesture.cs
- AlignmentYValidation.cs
- CollectionViewGroupInternal.cs
- CapabilitiesRule.cs
- BindingMemberInfo.cs
- BuildDependencySet.cs
- ADMembershipUser.cs
- RSAOAEPKeyExchangeDeformatter.cs
- Queue.cs
- BitmapMetadataEnumerator.cs
- ImageListStreamer.cs
- ConnectionManagementElementCollection.cs
- TextRunTypographyProperties.cs
- Pair.cs
- OdbcDataReader.cs
- BitFlagsGenerator.cs
- PropertyKey.cs
- DiagnosticsConfigurationHandler.cs
- DesignerCalendarAdapter.cs
- TextTreeNode.cs
- ComponentCollection.cs
- SafeCoTaskMem.cs
- GridViewCellAutomationPeer.cs
- DesignerActionListCollection.cs
- ServerValidateEventArgs.cs
- RemoteWebConfigurationHost.cs
- LayoutEngine.cs
- SimpleRecyclingCache.cs
- ParameterBuilder.cs
- ExtendedPropertyInfo.cs
- StorageEndPropertyMapping.cs
- EventEntry.cs
- UInt16Storage.cs
- TextFormatterImp.cs
- MouseCaptureWithinProperty.cs
- CfgArc.cs
- PathStreamGeometryContext.cs
- InputLanguageSource.cs
- FieldNameLookup.cs
- PopupRoot.cs
- SmtpFailedRecipientsException.cs
- JsonReader.cs