Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CommandConverter.cs
- DataSourceView.cs
- EventProvider.cs
- KeyGesture.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- NameValuePermission.cs
- HttpRuntimeSection.cs
- SqlConnectionString.cs
- DrawingAttributesDefaultValueFactory.cs
- RelationshipManager.cs
- BaseCollection.cs
- TypeBuilderInstantiation.cs
- TextElementCollection.cs
- IdentifierCollection.cs
- NeutralResourcesLanguageAttribute.cs
- EntityDataSourceStatementEditorForm.cs
- MonitoringDescriptionAttribute.cs
- WindowsSlider.cs
- CookieHandler.cs
- SimpleModelProvider.cs
- BindingManagerDataErrorEventArgs.cs
- SqlCacheDependencySection.cs
- LambdaCompiler.Binary.cs
- FormatterConverter.cs
- CodeAttributeDeclarationCollection.cs
- TraceUtility.cs
- CharStorage.cs
- AsymmetricSignatureDeformatter.cs
- CustomExpressionEventArgs.cs
- TextReader.cs
- OperationAbortedException.cs
- TableDetailsRow.cs
- Soap11ServerProtocol.cs
- GrammarBuilder.cs
- ConfigXmlSignificantWhitespace.cs
- SR.cs
- PaintEvent.cs
- ElementNotEnabledException.cs
- LinqDataSourceView.cs
- TabItemAutomationPeer.cs
- ProfileSettingsCollection.cs
- CornerRadiusConverter.cs
- SystemWebExtensionsSectionGroup.cs
- BackgroundWorker.cs
- ConfigurationPropertyCollection.cs
- CharacterMetrics.cs
- HeaderUtility.cs
- formatter.cs
- XsltOutput.cs
- DataGridViewLinkColumn.cs
- CollectionEditor.cs
- HttpCacheVaryByContentEncodings.cs
- CodeIdentifiers.cs
- ChangeToolStripParentVerb.cs
- SegmentTree.cs
- grammarelement.cs
- PreviewPrintController.cs
- GeometryDrawing.cs
- XmlParser.cs
- NamespaceDisplayAutomationPeer.cs
- SpellerInterop.cs
- DataStreamFromComStream.cs
- OdbcTransaction.cs
- SpellCheck.cs
- IndependentAnimationStorage.cs
- PrinterResolution.cs
- CommonXSendMessage.cs
- BrowserDefinitionCollection.cs
- ApplicationHost.cs
- RowUpdatedEventArgs.cs
- ListControl.cs
- VBIdentifierTrimConverter.cs
- FontDriver.cs
- WebPartDescriptionCollection.cs
- thaishape.cs
- StorageTypeMapping.cs
- WebPartZoneBaseDesigner.cs
- CaretElement.cs
- IsolatedStorageSecurityState.cs
- PropertyPathConverter.cs
- SessionPageStateSection.cs
- Axis.cs
- HttpCachePolicyWrapper.cs
- ListBoxChrome.cs
- FontCacheUtil.cs
- SettingsProviderCollection.cs
- DrawingDrawingContext.cs
- ObjectNotFoundException.cs
- IntegerValidator.cs
- GenericParameterDataContract.cs
- DoubleAnimationClockResource.cs
- SqlRowUpdatedEvent.cs
- AQNBuilder.cs
- DataStreams.cs
- DataControlImageButton.cs
- ProtocolsSection.cs
- ChangePassword.cs
- NameValuePair.cs
- EventLogTraceListener.cs
- ObjectQueryState.cs