Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / ConfigurationSection.cs / 1305376 / ConfigurationSection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Configuration { using System; using System.Collections.Specialized; using System.Configuration.Internal; using System.IO; using System.Reflection; using System.Security; using System.Text; using System.Xml; using System.Globalization; using System.Runtime.Versioning; public abstract class ConfigurationSection : ConfigurationElement { private SectionInformation _section; // Constructor // protected ConfigurationSection() { _section = new SectionInformation( this ); } // SectionInformation property // // Retrieve the class associated with the Section information // public SectionInformation SectionInformation { get { return _section; } } // GetRuntimeObject // // Return the Runtime Object for this Section // protected internal virtual object GetRuntimeObject() { return this; } protected internal override bool IsModified() { return ( SectionInformation.IsModifiedFlags() || base.IsModified() ); } protected internal override void ResetModified() { SectionInformation.ResetModifiedFlags(); base.ResetModified(); } protected internal virtual void DeserializeSection(XmlReader reader) { if (!reader.Read() || reader.NodeType != XmlNodeType.Element) { throw new ConfigurationErrorsException(SR.GetString(SR.Config_base_expected_to_find_element), reader); } DeserializeElement(reader, false); } protected internal virtual string SerializeSection(ConfigurationElement parentElement, string name, ConfigurationSaveMode saveMode) { if (CurrentConfiguration != null && CurrentConfiguration.TargetFramework != null && !ShouldSerializeSectionInTargetVersion(CurrentConfiguration.TargetFramework)) { return string.Empty; } ValidateElement(this, null, true); ConfigurationElement TempElement = CreateElement(this.GetType()); TempElement.Unmerge(this, parentElement, saveMode); StringWriter strWriter = new StringWriter(CultureInfo.InvariantCulture); XmlTextWriter writer = new XmlTextWriter(strWriter); writer.Formatting = Formatting.Indented; writer.Indentation = 4; writer.IndentChar = ' '; TempElement.DataToWriteInternal = (saveMode != ConfigurationSaveMode.Minimal); if (CurrentConfiguration != null && CurrentConfiguration.TargetFramework != null) _configRecord.SectionsStack.Push(this); TempElement.SerializeToXmlElement(writer, name); if (CurrentConfiguration != null && CurrentConfiguration.TargetFramework != null) _configRecord.SectionsStack.Pop(); writer.Flush(); return strWriter.ToString(); } protected internal virtual bool ShouldSerializePropertyInTargetVersion(ConfigurationProperty property, string propertyName, FrameworkName targetFramework, ConfigurationElement parentConfigurationElement) { return true; } protected internal virtual bool ShouldSerializeElementInTargetVersion(ConfigurationElement element, string elementName, FrameworkName targetFramework) { return true; } protected internal virtual bool ShouldSerializeSectionInTargetVersion(FrameworkName targetFramework) { return true; } } } // 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
- EncodingDataItem.cs
- ItemPager.cs
- TransactionInterop.cs
- JoinElimination.cs
- RouteItem.cs
- SoapAttributes.cs
- EventRouteFactory.cs
- ListView.cs
- Configuration.cs
- SqlUDTStorage.cs
- DefaultObjectMappingItemCollection.cs
- EncryptedHeaderXml.cs
- ConnectionStringsExpressionEditor.cs
- PasswordRecovery.cs
- SurrogateDataContract.cs
- ReferencedType.cs
- PageSettings.cs
- PrimitiveCodeDomSerializer.cs
- HtmlEncodedRawTextWriter.cs
- MultipleViewPattern.cs
- DiscardableAttribute.cs
- PeerResolverSettings.cs
- SizeKeyFrameCollection.cs
- MethodBody.cs
- DateTimeSerializationSection.cs
- BitmapEffectDrawingContextState.cs
- MeshGeometry3D.cs
- MappedMetaModel.cs
- HtmlInputControl.cs
- CharacterMetricsDictionary.cs
- SimpleWebHandlerParser.cs
- SocketManager.cs
- SourceFileInfo.cs
- EventItfInfo.cs
- AssertValidation.cs
- WebPartTransformerCollection.cs
- AssemblyFilter.cs
- NavigationExpr.cs
- DataServiceQueryOfT.cs
- HtmlInputReset.cs
- TextParagraph.cs
- EntityDataSourceValidationException.cs
- SqlExpander.cs
- ConfigXmlDocument.cs
- TraceSection.cs
- ComPlusSynchronizationContext.cs
- MessageAction.cs
- HijriCalendar.cs
- Polyline.cs
- OdbcInfoMessageEvent.cs
- CodePrimitiveExpression.cs
- WorkflowWebHostingModule.cs
- NavigationFailedEventArgs.cs
- EdgeProfileValidation.cs
- Point4D.cs
- WmpBitmapDecoder.cs
- EntityViewGenerationAttribute.cs
- Transform3DGroup.cs
- DbDeleteCommandTree.cs
- Attributes.cs
- Cursors.cs
- ResourceDisplayNameAttribute.cs
- FreezableCollection.cs
- FixUpCollection.cs
- Rfc2898DeriveBytes.cs
- SecuritySessionSecurityTokenAuthenticator.cs
- RMEnrollmentPage2.cs
- ValidationErrorCollection.cs
- AppDomainEvidenceFactory.cs
- TypeSystem.cs
- SplitterEvent.cs
- newinstructionaction.cs
- LineServicesCallbacks.cs
- BuildManager.cs
- InvalidCommandTreeException.cs
- Deflater.cs
- TagPrefixCollection.cs
- EmissiveMaterial.cs
- XmlSchema.cs
- XmlFormatExtensionPointAttribute.cs
- ManipulationInertiaStartingEventArgs.cs
- SecurityElement.cs
- InvalidOleVariantTypeException.cs
- PointHitTestParameters.cs
- ApplicationServicesHostFactory.cs
- ToolStripMenuItem.cs
- RijndaelManaged.cs
- DataGridViewCellConverter.cs
- ObjectMemberMapping.cs
- CopyEncoder.cs
- DoubleStorage.cs
- TileBrush.cs
- MDIControlStrip.cs
- GrammarBuilderPhrase.cs
- KeyToListMap.cs
- GridViewColumnHeaderAutomationPeer.cs
- LowerCaseStringConverter.cs
- GetCardDetailsRequest.cs
- UnsafeNativeMethodsMilCoreApi.cs
- WebZoneDesigner.cs