Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / XmlUtil.cs / 1 / XmlUtil.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel { using System.Xml; using System.Diagnostics; static class XmlUtil { public const string XmlNs = "http://www.w3.org/XML/1998/namespace"; public const string XmlNsNs = "http://www.w3.org/2000/xmlns/"; public static string GetXmlLangAttribute(XmlReader reader) { string xmlLang = null; if (reader.MoveToAttribute("lang", XmlNs)) { xmlLang = reader.Value; reader.MoveToElement(); } if (xmlLang == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.XmlLangAttributeMissing))); return xmlLang; } // FIX for 7455 public static bool IsTrue(string booleanValue) { if (string.IsNullOrEmpty(booleanValue)) { return false; } return XmlConvert.ToBoolean(booleanValue); } public static void ReadContentAsQName(XmlReader reader, out string localName, out string ns) { ParseQName(reader, reader.ReadContentAsString(), out localName, out ns); } public static bool IsWhitespace(char ch) { return (ch == ' ' || ch == '\t' || ch == '\r' || ch == '\n'); } public static string TrimEnd(string s) { int i; for (i = s.Length; i > 0 && IsWhitespace(s[i - 1]); i--) ; if (i != s.Length) { return s.Substring(0, i); } return s; } public static string TrimStart(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++) ; if (i != 0) { return s.Substring(i); } return s; } public static string Trim(string s) { int i; for (i = 0; i < s.Length && IsWhitespace(s[i]); i++); if (i >= s.Length) { return string.Empty; } int j; for (j = s.Length; j > 0 && IsWhitespace(s[j - 1]); j--); DiagnosticUtility.DebugAssert(j > i, "Logic error in XmlUtil.Trim()."); if (i != 0 || j != s.Length) { return s.Substring(i, j - i); } return s; } public static void ParseQName(XmlReader reader, string qname, out string localName, out string ns) { int index = qname.IndexOf(':'); string prefix; if (index < 0) { prefix = ""; localName = TrimStart(TrimEnd(qname)); } else { if (index == qname.Length - 1) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.InvalidXmlQualifiedName, qname))); prefix = TrimStart(qname.Substring(0, index)); localName = TrimEnd(qname.Substring(index + 1)); } ns = reader.LookupNamespace(prefix); if (ns == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new XmlException(SR.GetString(SR.UnboundPrefixInQName, qname))); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NeutralResourcesLanguageAttribute.cs
- WindowsScrollBarBits.cs
- messageonlyhwndwrapper.cs
- StateMachine.cs
- DataGridViewTextBoxEditingControl.cs
- DomNameTable.cs
- ProfileSettingsCollection.cs
- SortedDictionary.cs
- ListBindingConverter.cs
- AnonymousIdentificationSection.cs
- KnownBoxes.cs
- CompiledQueryCacheKey.cs
- TextParentUndoUnit.cs
- GenericsInstances.cs
- SortExpressionBuilder.cs
- XamlRtfConverter.cs
- PageVisual.cs
- DateTimeFormatInfoScanner.cs
- ComplexLine.cs
- Block.cs
- HttpPostServerProtocol.cs
- ExpressionBuilder.cs
- ModuleElement.cs
- PassportAuthenticationEventArgs.cs
- _HeaderInfoTable.cs
- ICollection.cs
- TypeSystem.cs
- Graphics.cs
- ErrorHandler.cs
- WebBrowserPermission.cs
- RuntimeResourceSet.cs
- Automation.cs
- DataTableMapping.cs
- XmlDomTextWriter.cs
- WebBrowserSiteBase.cs
- ScriptIgnoreAttribute.cs
- PeerMessageDispatcher.cs
- Light.cs
- CounterCreationDataConverter.cs
- TextAction.cs
- CalendarDay.cs
- XmlSchemaAttributeGroup.cs
- IPGlobalProperties.cs
- RawStylusInputCustomData.cs
- LeafCellTreeNode.cs
- LeftCellWrapper.cs
- JoinQueryOperator.cs
- CompareValidator.cs
- CryptographicAttribute.cs
- ValidatingReaderNodeData.cs
- HttpWrapper.cs
- SoapFaultCodes.cs
- ContainerAction.cs
- GlobalizationSection.cs
- DecoderFallbackWithFailureFlag.cs
- RequestedSignatureDialog.cs
- Attributes.cs
- RuntimeHelpers.cs
- XpsSerializationException.cs
- ListParagraph.cs
- RotationValidation.cs
- HierarchicalDataTemplate.cs
- XXXOnTypeBuilderInstantiation.cs
- ProviderSettings.cs
- ChannelManager.cs
- DesignerGeometryHelper.cs
- LineBreak.cs
- FeatureAttribute.cs
- DbDataReader.cs
- DispatchWrapper.cs
- Typeface.cs
- AssociationSet.cs
- ReferenceEqualityComparer.cs
- TableProviderWrapper.cs
- TextDecorationUnitValidation.cs
- CurrentTimeZone.cs
- Metafile.cs
- ChannelSinkStacks.cs
- NativeCppClassAttribute.cs
- Serializer.cs
- PingReply.cs
- FormsAuthenticationModule.cs
- CodeSnippetCompileUnit.cs
- PipeStream.cs
- SecureStringHasher.cs
- WebConfigurationHostFileChange.cs
- ImageAutomationPeer.cs
- CodeEventReferenceExpression.cs
- SQLInt64.cs
- XmlArrayAttribute.cs
- DesignerCategoryAttribute.cs
- HtmlTableCellCollection.cs
- DocumentPaginator.cs
- BasicCellRelation.cs
- EntityDataSourceViewSchema.cs
- XmlSchemas.cs
- SymmetricKey.cs
- Message.cs
- WindowsFormsSectionHandler.cs
- VisualCollection.cs