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
- securitymgrsite.cs
- BitmapSourceSafeMILHandle.cs
- NameValuePermission.cs
- Geometry.cs
- TemplateApplicationHelper.cs
- DateRangeEvent.cs
- DetailsViewRowCollection.cs
- XmlChildEnumerator.cs
- XomlSerializationHelpers.cs
- ScriptBehaviorDescriptor.cs
- MethodImplAttribute.cs
- AssemblyName.cs
- keycontainerpermission.cs
- ReadOnlyCollectionBuilder.cs
- DataTableClearEvent.cs
- SmiContext.cs
- DesignTimeHTMLTextWriter.cs
- FilterableAttribute.cs
- BitSet.cs
- SoapMessage.cs
- ToolStripContentPanel.cs
- ObjectParameter.cs
- SerialErrors.cs
- JulianCalendar.cs
- DataGridViewRowsAddedEventArgs.cs
- dsa.cs
- StretchValidation.cs
- CheckBoxAutomationPeer.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- PrivilegedConfigurationManager.cs
- ISFClipboardData.cs
- CLSCompliantAttribute.cs
- _FtpDataStream.cs
- SerialReceived.cs
- CommandHelpers.cs
- PeerUnsafeNativeMethods.cs
- TextEffectResolver.cs
- MessageBuilder.cs
- Signature.cs
- HitTestDrawingContextWalker.cs
- ScriptReference.cs
- PointCollectionConverter.cs
- SqlMethodCallConverter.cs
- OdbcTransaction.cs
- Binding.cs
- AutoResizedEvent.cs
- EventProvider.cs
- TableProviderWrapper.cs
- ComponentEditorForm.cs
- HotSpot.cs
- IResourceProvider.cs
- UnknownWrapper.cs
- SynchronizedInputPattern.cs
- PixelShader.cs
- XPathItem.cs
- ProgressChangedEventArgs.cs
- HttpModuleAction.cs
- OleDbDataAdapter.cs
- DesignerRegionCollection.cs
- ScriptReferenceEventArgs.cs
- Terminate.cs
- DebugView.cs
- MetadataException.cs
- ListViewTableCell.cs
- Main.cs
- SafeTokenHandle.cs
- DataObject.cs
- SafeNativeMemoryHandle.cs
- SmtpTransport.cs
- PermissionSetEnumerator.cs
- ClientApiGenerator.cs
- EncryptedData.cs
- SerTrace.cs
- CollectionViewSource.cs
- CalendarDateRange.cs
- KeyBinding.cs
- DataContractSerializerSection.cs
- DiscoveryCallbackBehavior.cs
- MsmqInputChannelListener.cs
- EnumValAlphaComparer.cs
- RuleSettings.cs
- CollectionContainer.cs
- ResourceDescriptionAttribute.cs
- ConfigurationProperty.cs
- UnionQueryOperator.cs
- DataGridViewRowStateChangedEventArgs.cs
- SqlReorderer.cs
- InheritanceRules.cs
- Scripts.cs
- DataDocumentXPathNavigator.cs
- StorageMappingItemLoader.cs
- XmlnsCache.cs
- CheckableControlBaseAdapter.cs
- PageFunction.cs
- FeatureSupport.cs
- CodeAttributeArgument.cs
- Font.cs
- SqlNode.cs
- DataGridViewButtonColumn.cs
- SectionVisual.cs