Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / Mobile / ConfigurationSectionHelper.cs / 1305376 / ConfigurationSectionHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Mobile { using System.Xml; using System.Configuration; using System.Diagnostics; using System.Globalization; [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class ConfigurationSectionHelper { private XmlNode _currentNode = null; internal ConfigurationSectionHelper() { } internal /*public*/ XmlNode Node { get { return _currentNode; } set { _currentNode = value; } } private XmlNode GetAndRemoveAttribute(String attributeName, bool required) { XmlNode attibuteNode = _currentNode.Attributes.RemoveNamedItem(attributeName); if (required && attibuteNode == null) { String msg = SR.GetString(SR.ConfigSect_MissingAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } return attibuteNode; } internal /*public*/ String RemoveStringAttribute(String attributeName, bool required) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { if(required && (attributeNode.Value != null && attributeNode.Value.Length == 0)) { String msg = SR.GetString(SR.ConfigSect_MissingValue, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } return attributeNode.Value; } else { return null; } } #if UNUSED_CODE internal /*public*/ bool RemoveBoolAttribute(String attributeName, bool required, bool defaultValue) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { try { return bool.Parse(attributeNode.Value); } catch { String msg = SR.GetString(SR.ConfigSect_InvalidBooleanAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } } else { return defaultValue; } } internal /*public*/ int RemoveIntAttribute(String attributeName, bool required, int defaultValue) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { try { return int.Parse(attributeNode.Value, CultureInfo.InvariantCulture); } catch { String msg = SR.GetString(SR.ConfigSect_InvalidIntegerAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } } else { return defaultValue; } } #endif internal /*public*/ void CheckForUnrecognizedAttributes() { Debug.Assert(null != _currentNode); if(_currentNode.Attributes.Count != 0) { String msg = SR.GetString(SR.ConfigSect_UnknownAttr, _currentNode.Attributes[0].Name); throw new ConfigurationErrorsException(msg, _currentNode); } } internal /*public*/ bool IsWhitespaceOrComment() { Debug.Assert(null != _currentNode); return _currentNode.NodeType == XmlNodeType.Comment || _currentNode.NodeType == XmlNodeType.Whitespace; } internal /*public*/ void RejectNonElement() { Debug.Assert(null != _currentNode); if(_currentNode.NodeType != XmlNodeType.Element) { throw new ConfigurationErrorsException(SR.GetString(SR.ConfigSect_UnrecognizedXML), _currentNode); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Mobile { using System.Xml; using System.Configuration; using System.Diagnostics; using System.Globalization; [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal class ConfigurationSectionHelper { private XmlNode _currentNode = null; internal ConfigurationSectionHelper() { } internal /*public*/ XmlNode Node { get { return _currentNode; } set { _currentNode = value; } } private XmlNode GetAndRemoveAttribute(String attributeName, bool required) { XmlNode attibuteNode = _currentNode.Attributes.RemoveNamedItem(attributeName); if (required && attibuteNode == null) { String msg = SR.GetString(SR.ConfigSect_MissingAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } return attibuteNode; } internal /*public*/ String RemoveStringAttribute(String attributeName, bool required) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { if(required && (attributeNode.Value != null && attributeNode.Value.Length == 0)) { String msg = SR.GetString(SR.ConfigSect_MissingValue, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } return attributeNode.Value; } else { return null; } } #if UNUSED_CODE internal /*public*/ bool RemoveBoolAttribute(String attributeName, bool required, bool defaultValue) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { try { return bool.Parse(attributeNode.Value); } catch { String msg = SR.GetString(SR.ConfigSect_InvalidBooleanAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } } else { return defaultValue; } } internal /*public*/ int RemoveIntAttribute(String attributeName, bool required, int defaultValue) { Debug.Assert(null != _currentNode); XmlNode attributeNode = GetAndRemoveAttribute(attributeName, required); if(attributeNode != null) { try { return int.Parse(attributeNode.Value, CultureInfo.InvariantCulture); } catch { String msg = SR.GetString(SR.ConfigSect_InvalidIntegerAttr, attributeName); throw new ConfigurationErrorsException(msg, _currentNode); } } else { return defaultValue; } } #endif internal /*public*/ void CheckForUnrecognizedAttributes() { Debug.Assert(null != _currentNode); if(_currentNode.Attributes.Count != 0) { String msg = SR.GetString(SR.ConfigSect_UnknownAttr, _currentNode.Attributes[0].Name); throw new ConfigurationErrorsException(msg, _currentNode); } } internal /*public*/ bool IsWhitespaceOrComment() { Debug.Assert(null != _currentNode); return _currentNode.NodeType == XmlNodeType.Comment || _currentNode.NodeType == XmlNodeType.Whitespace; } internal /*public*/ void RejectNonElement() { Debug.Assert(null != _currentNode); if(_currentNode.NodeType != XmlNodeType.Element) { throw new ConfigurationErrorsException(SR.GetString(SR.ConfigSect_UnrecognizedXML), _currentNode); } } } } // 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
- ThousandthOfEmRealDoubles.cs
- VisualState.cs
- DataObjectSettingDataEventArgs.cs
- ImageAnimator.cs
- RSAProtectedConfigurationProvider.cs
- BitmapEffectInput.cs
- RangeExpression.cs
- BCryptNative.cs
- ObjectItemCollection.cs
- AutomationFocusChangedEventArgs.cs
- DeriveBytes.cs
- WeakRefEnumerator.cs
- WorkflowPersistenceService.cs
- ScriptResourceAttribute.cs
- FieldBuilder.cs
- ResourceDisplayNameAttribute.cs
- FileEnumerator.cs
- TextRangeEditLists.cs
- WebColorConverter.cs
- ProtocolsConfigurationHandler.cs
- ControlBuilderAttribute.cs
- TraceShell.cs
- RegexRunnerFactory.cs
- AuthenticationModulesSection.cs
- _LocalDataStoreMgr.cs
- SqlUDTStorage.cs
- Executor.cs
- ErrorWrapper.cs
- Icon.cs
- InstanceCollisionException.cs
- WebPartDisplayModeCancelEventArgs.cs
- ReflectEventDescriptor.cs
- PropertyRef.cs
- PageContentCollection.cs
- securitycriticaldataClass.cs
- BindStream.cs
- DataGridColumn.cs
- ComponentManagerBroker.cs
- TextSpan.cs
- DataSourceDescriptorCollection.cs
- MemoryRecordBuffer.cs
- Compress.cs
- SchemaCreator.cs
- PackageRelationshipSelector.cs
- storepermission.cs
- TableDetailsCollection.cs
- SmiTypedGetterSetter.cs
- CodeAttributeArgument.cs
- FormViewCommandEventArgs.cs
- XPathPatternBuilder.cs
- PageCatalogPartDesigner.cs
- XNodeValidator.cs
- GradientStop.cs
- RegionInfo.cs
- ComNativeDescriptor.cs
- XmlIlVisitor.cs
- MatrixTransform3D.cs
- FieldToken.cs
- GatewayDefinition.cs
- XMLSyntaxException.cs
- DataGridTextBox.cs
- DataColumnMapping.cs
- EarlyBoundInfo.cs
- CustomAttributeFormatException.cs
- DynamicValueConverter.cs
- WizardStepBase.cs
- AsymmetricSignatureDeformatter.cs
- TreeNodeCollection.cs
- EventProviderWriter.cs
- EventLogReader.cs
- FileCodeGroup.cs
- CompositeControl.cs
- ExpandCollapseProviderWrapper.cs
- DateTimeFormat.cs
- DecoderNLS.cs
- RawAppCommandInputReport.cs
- Walker.cs
- PageContent.cs
- IHttpResponseInternal.cs
- CurrentTimeZone.cs
- TargetControlTypeAttribute.cs
- StylusDevice.cs
- ThreadAttributes.cs
- GridViewUpdateEventArgs.cs
- NativeWindow.cs
- TriggerAction.cs
- ListControl.cs
- updatecommandorderer.cs
- BamlLocalizabilityResolver.cs
- ReferencedCollectionType.cs
- X509WindowsSecurityToken.cs
- ThreadAbortException.cs
- PointCollection.cs
- ResourceFallbackManager.cs
- GeometryDrawing.cs
- ObjectPersistData.cs
- WSSecureConversationDec2005.cs
- Util.cs
- RelatedImageListAttribute.cs
- StreamMarshaler.cs