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
- ProgressBar.cs
- HandoffBehavior.cs
- DataGridViewColumnStateChangedEventArgs.cs
- CodeDomDecompiler.cs
- RouteItem.cs
- UICuesEvent.cs
- FileDialog.cs
- ColorMap.cs
- EventManager.cs
- FollowerQueueCreator.cs
- MethodRental.cs
- DataControlButton.cs
- HMACRIPEMD160.cs
- PrintPreviewControl.cs
- QuaternionAnimationBase.cs
- Label.cs
- CompositeClientFormatter.cs
- DataPagerField.cs
- RegisteredScript.cs
- BuildResultCache.cs
- SimpleWorkerRequest.cs
- FragmentNavigationEventArgs.cs
- TextViewBase.cs
- DataGridViewComboBoxEditingControl.cs
- InitializationEventAttribute.cs
- WsiProfilesElementCollection.cs
- DoubleAnimationUsingKeyFrames.cs
- RegularExpressionValidator.cs
- KeyInfo.cs
- XDRSchema.cs
- WebPartConnectionsCancelEventArgs.cs
- FormCollection.cs
- SettingsAttributes.cs
- XmlObjectSerializerReadContext.cs
- PropertyBuilder.cs
- StylusButtonEventArgs.cs
- metadatamappinghashervisitor.cs
- EmptyEnumerator.cs
- Point3D.cs
- XNodeNavigator.cs
- HiddenFieldPageStatePersister.cs
- CounterCreationDataCollection.cs
- TypeUsageBuilder.cs
- TextTreeTextBlock.cs
- DocumentViewerHelper.cs
- Compress.cs
- Publisher.cs
- ToolBar.cs
- SrgsRule.cs
- TemplatePropertyEntry.cs
- ReadWriteObjectLock.cs
- DomNameTable.cs
- Italic.cs
- TextContainerHelper.cs
- FirstQueryOperator.cs
- EntityContainerEntitySet.cs
- ToolStripPanelDesigner.cs
- CompositeDispatchFormatter.cs
- ArglessEventHandlerProxy.cs
- BaseCodePageEncoding.cs
- DbMetaDataFactory.cs
- HttpClientCredentialType.cs
- ValidationErrorCollection.cs
- PerformanceCountersElement.cs
- XmlSchemaCollection.cs
- _NegoStream.cs
- AmbientValueAttribute.cs
- FileClassifier.cs
- DocumentsTrace.cs
- WebOperationContext.cs
- invalidudtexception.cs
- DynamicQueryableWrapper.cs
- SqlRowUpdatingEvent.cs
- RichTextBoxConstants.cs
- XhtmlBasicCommandAdapter.cs
- JulianCalendar.cs
- HtmlSelect.cs
- WindowsListBox.cs
- PartialList.cs
- QueryRewriter.cs
- Attribute.cs
- ResourceReferenceKeyNotFoundException.cs
- StylusEventArgs.cs
- CollectionViewGroupRoot.cs
- UserControlParser.cs
- AttributeProviderAttribute.cs
- TextBoxAutoCompleteSourceConverter.cs
- ToolStripDesignerAvailabilityAttribute.cs
- DataSourceSerializationException.cs
- OpenFileDialog.cs
- ObjectListGeneralPage.cs
- SpellerHighlightLayer.cs
- Int16AnimationBase.cs
- QueuePropertyVariants.cs
- WindowsStatic.cs
- _HelperAsyncResults.cs
- GAC.cs
- TreeNodeStyle.cs
- CodeNamespaceImport.cs
- ListViewSelectEventArgs.cs