Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / XmlHelper.cs / 1305376 / XmlHelper.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.IO; using System.Text; using System.Xml; static class XmlHelper { internal static string GetWhiteSpace(XmlReader reader) { string s = null; StringBuilder sb = null; while (reader.NodeType == XmlNodeType.Whitespace || reader.NodeType == XmlNodeType.SignificantWhitespace) { if (sb != null) { sb.Append(reader.Value); } else if (s != null) { sb = new StringBuilder(s); sb.Append(reader.Value); s = null; } else { s = reader.Value; } if (!reader.Read()) { break; } } return sb != null ? sb.ToString() : s; } internal static void OnRequiredAttributeMissing(string attrName, string elementName) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.RequiredAttributeMissing, attrName, elementName))); } internal static string ReadEmptyElementAndRequiredAttribute(XmlDictionaryReader reader, XmlDictionaryString name, XmlDictionaryString namespaceUri, XmlDictionaryString attributeName, out string prefix) { reader.MoveToStartElement(name, namespaceUri); prefix = reader.Prefix; bool isEmptyElement = reader.IsEmptyElement; string value = reader.GetAttribute(attributeName, null); if (value == null) { OnRequiredAttributeMissing(attributeName.Value, null); } reader.Read(); if (!isEmptyElement) { reader.ReadEndElement(); } return value; } internal static string ReadTextElementAsTrimmedString(XmlElement element) { if (element == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } XmlReader reader = new XmlNodeReader(element); reader.MoveToContent(); return XmlUtil.Trim(reader.ReadElementContentAsString()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel { using System.IO; using System.Text; using System.Xml; static class XmlHelper { internal static string GetWhiteSpace(XmlReader reader) { string s = null; StringBuilder sb = null; while (reader.NodeType == XmlNodeType.Whitespace || reader.NodeType == XmlNodeType.SignificantWhitespace) { if (sb != null) { sb.Append(reader.Value); } else if (s != null) { sb = new StringBuilder(s); sb.Append(reader.Value); s = null; } else { s = reader.Value; } if (!reader.Read()) { break; } } return sb != null ? sb.ToString() : s; } internal static void OnRequiredAttributeMissing(string attrName, string elementName) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.RequiredAttributeMissing, attrName, elementName))); } internal static string ReadEmptyElementAndRequiredAttribute(XmlDictionaryReader reader, XmlDictionaryString name, XmlDictionaryString namespaceUri, XmlDictionaryString attributeName, out string prefix) { reader.MoveToStartElement(name, namespaceUri); prefix = reader.Prefix; bool isEmptyElement = reader.IsEmptyElement; string value = reader.GetAttribute(attributeName, null); if (value == null) { OnRequiredAttributeMissing(attributeName.Value, null); } reader.Read(); if (!isEmptyElement) { reader.ReadEndElement(); } return value; } internal static string ReadTextElementAsTrimmedString(XmlElement element) { if (element == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } XmlReader reader = new XmlNodeReader(element); reader.MoveToContent(); return XmlUtil.Trim(reader.ReadElementContentAsString()); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FixedTextPointer.cs
- ConfigurationElement.cs
- ToolStripDesignerAvailabilityAttribute.cs
- XsdDuration.cs
- DbModificationClause.cs
- EntryWrittenEventArgs.cs
- Screen.cs
- UInt64Converter.cs
- ResourceDictionaryCollection.cs
- CellTreeNodeVisitors.cs
- Win32SafeHandles.cs
- EventSinkHelperWriter.cs
- tibetanshape.cs
- BehaviorEditorPart.cs
- XmlAnyElementAttributes.cs
- RijndaelManaged.cs
- PointF.cs
- XmlSchemaAppInfo.cs
- IItemContainerGenerator.cs
- RowToFieldTransformer.cs
- Wrapper.cs
- JsonReaderDelegator.cs
- Win32.cs
- ProcessStartInfo.cs
- DataTemplate.cs
- PrimaryKeyTypeConverter.cs
- SqlRowUpdatedEvent.cs
- InvalidWMPVersionException.cs
- NotConverter.cs
- ScriptReferenceEventArgs.cs
- LongTypeConverter.cs
- BamlLocalizableResource.cs
- AspNetHostingPermission.cs
- StdValidatorsAndConverters.cs
- XmlSecureResolver.cs
- ClientSponsor.cs
- TypeDescriptionProviderAttribute.cs
- SoapSchemaMember.cs
- WhitespaceRuleReader.cs
- WeakKeyDictionary.cs
- SimpleMailWebEventProvider.cs
- AppDomainFactory.cs
- DrawingContextDrawingContextWalker.cs
- AsymmetricKeyExchangeFormatter.cs
- Evidence.cs
- ExecutionTracker.cs
- PerformanceCounterManager.cs
- GeometryModel3D.cs
- XAMLParseException.cs
- SplitterEvent.cs
- EventLogPermissionAttribute.cs
- Cursor.cs
- ItemMap.cs
- XmlSerializationReader.cs
- AddressUtility.cs
- BaseDataBoundControl.cs
- MethodCallConverter.cs
- PackageDocument.cs
- EntityDataSourceChangedEventArgs.cs
- GroupBoxDesigner.cs
- SqlReferenceCollection.cs
- ExpressionBinding.cs
- SamlAuthorizationDecisionClaimResource.cs
- GridViewColumnCollectionChangedEventArgs.cs
- Activity.cs
- DifferencingCollection.cs
- RegistryKey.cs
- Transform3DGroup.cs
- MutexSecurity.cs
- DataBindingsDialog.cs
- WindowsRichEditRange.cs
- ExpressionDumper.cs
- CoTaskMemHandle.cs
- MainMenu.cs
- ToolStripStatusLabel.cs
- Stacktrace.cs
- DataControlFieldCell.cs
- XpsThumbnail.cs
- ArgumentOutOfRangeException.cs
- OracleDataReader.cs
- PeerCollaborationPermission.cs
- SQLDateTimeStorage.cs
- XPathNodePointer.cs
- VirtualizingStackPanel.cs
- ValueSerializerAttribute.cs
- TypeDescriptionProvider.cs
- Variant.cs
- InputLanguageEventArgs.cs
- FlowDocumentPageViewerAutomationPeer.cs
- FormViewInsertEventArgs.cs
- Typography.cs
- TextWriterEngine.cs
- SeekStoryboard.cs
- DataFormat.cs
- KeyManager.cs
- SessionIDManager.cs
- ValidatedMobileControlConverter.cs
- EmbeddedMailObject.cs
- Model3D.cs
- SizeConverter.cs