Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / Tools / xws_reg / System / ServiceModel / Install / Configuration / ConfigurationLoader.cs / 1 / ConfigurationLoader.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Install.Configuration { using WebAdmin = Microsoft.Web.Administration; using System; using System.ServiceModel; using System.Configuration; using System.ServiceModel.Configuration; using System.Web.Configuration; using System.Xml; internal abstract class ConfigurationLoader { protected Configuration machineConfiguration; protected Configuration rootWebConfiguration; internal abstract Configuration MachineConfiguration { get; } internal string MachineConfigurationFilePath { get { string filePath = null; if (null != this.MachineConfiguration) { filePath = this.MachineConfiguration.FilePath; } return filePath; } } internal abstract Configuration RootWebConfiguration { get; } internal string RootWebConfigurationFilePath { get { string filePath = null; if (null != this.RootWebConfiguration) { filePath = this.RootWebConfiguration.FilePath; } return filePath; } } internal ProtocolsSection ProtocolsSection { get { return (ProtocolsSection)this.RootWebConfiguration.GetSection(this.ProtocolsSectionPath); } } internal string ProtocolsSectionPath { get { return "system.web/protocols"; } } internal ServiceHostingEnvironmentSection ServiceHostingEnvironmentSection { get { return (ServiceHostingEnvironmentSection)this.RootWebConfiguration.GetSection(this.ServiceHostingEnvironmentSectionPath); } } internal string ServiceHostingEnvironmentSectionPath { get { return "system.serviceModel/serviceHostingEnvironment"; } } internal SystemWebSectionGroup SystemWebSectionGroup { get { return (SystemWebSectionGroup)this.RootWebConfiguration.GetSectionGroup(this.SystemWebSectionGroupPath); } } internal string SystemWebSectionGroupPath { get { return "system.web"; } } internal bool RemoveNodeFromConfigFile(string configFilePath, string xpath, bool ifNodeIsEmpty) { bool retVal = false; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(configFilePath); XmlNode node = xmlDoc.SelectSingleNode(xpath); if (null != node) { if (ifNodeIsEmpty) { if (0 == node.Attributes.Count && !node.HasChildNodes) { node.ParentNode.RemoveChild(node); retVal = true; } } else { node.ParentNode.RemoveChild(node); retVal = true; } } if (retVal) { xmlDoc.Save(configFilePath); if (configFilePath.Equals(this.MachineConfigurationFilePath, StringComparison.OrdinalIgnoreCase)) { this.machineConfiguration = null; } else if (configFilePath.Equals(this.RootWebConfigurationFilePath, StringComparison.OrdinalIgnoreCase)) { this.rootWebConfiguration = null; } } return retVal; } internal virtual void Save() { if (null != this.machineConfiguration) { this.machineConfiguration.Save(); this.machineConfiguration = null; } if (null != this.rootWebConfiguration) { this.rootWebConfiguration.Save(); this.rootWebConfiguration = null; } } } } // 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
- QuotedStringWriteStateInfo.cs
- MimeTypePropertyAttribute.cs
- UIElement3D.cs
- IntegerValidator.cs
- AmbientValueAttribute.cs
- FragmentNavigationEventArgs.cs
- DataColumnMappingCollection.cs
- ControlBindingsCollection.cs
- FloaterBaseParagraph.cs
- AddInDeploymentState.cs
- ToolBarButtonClickEvent.cs
- Visual3D.cs
- ByteConverter.cs
- FlowNode.cs
- KeyToListMap.cs
- mediaclock.cs
- ExternalDataExchangeService.cs
- GeneralTransform.cs
- DataControlCommands.cs
- DrawingServices.cs
- RealizationContext.cs
- LabelEditEvent.cs
- ObsoleteAttribute.cs
- OutputCacheModule.cs
- EntityViewGenerationAttribute.cs
- SqlGenericUtil.cs
- QueryOutputWriter.cs
- ComPlusInstanceProvider.cs
- CharacterBuffer.cs
- AutomationElement.cs
- storepermissionattribute.cs
- BufferedGraphicsManager.cs
- TimeoutValidationAttribute.cs
- EventWaitHandle.cs
- ProxySimple.cs
- Membership.cs
- DateTimeOffsetConverter.cs
- EdmRelationshipRoleAttribute.cs
- TextBox.cs
- SystemWebSectionGroup.cs
- DateTime.cs
- DotExpr.cs
- Convert.cs
- backend.cs
- ConstraintEnumerator.cs
- CommonXSendMessage.cs
- WebConfigurationManager.cs
- OrderedDictionaryStateHelper.cs
- SqlDuplicator.cs
- InputBinder.cs
- EventsTab.cs
- SmtpFailedRecipientException.cs
- ExpressionCopier.cs
- TemplateControlBuildProvider.cs
- DbSourceCommand.cs
- XamlBrushSerializer.cs
- FilePrompt.cs
- DiscoveryClientDuplexChannel.cs
- StrongNameUtility.cs
- IResourceProvider.cs
- DocumentReference.cs
- GcSettings.cs
- DynamicActionMessageFilter.cs
- ListBindingHelper.cs
- Attributes.cs
- ConnectionPointGlyph.cs
- DbInsertCommandTree.cs
- AutomationElementIdentifiers.cs
- webeventbuffer.cs
- XmlArrayItemAttribute.cs
- FollowerQueueCreator.cs
- GeneratedCodeAttribute.cs
- ObjectDataSourceDisposingEventArgs.cs
- InfoCardX509Validator.cs
- XmlLanguage.cs
- FormatterConverter.cs
- Journal.cs
- DeleteStoreRequest.cs
- Crypto.cs
- RuleAction.cs
- FontDifferentiator.cs
- SafeHandles.cs
- XmlSchemaComplexType.cs
- XmlSchemaRedefine.cs
- OciEnlistContext.cs
- HyperLinkColumn.cs
- DistributedTransactionPermission.cs
- CompilationUnit.cs
- AnimationStorage.cs
- StorageEntitySetMapping.cs
- UserMapPath.cs
- ForEachAction.cs
- RolePrincipal.cs
- NativeMethods.cs
- EntityContainerEmitter.cs
- ThreadLocal.cs
- Version.cs
- OrderedDictionary.cs
- SystemIcmpV4Statistics.cs
- StylusButtonEventArgs.cs