Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / Configuration / EndpointDiscoveryElement.cs / 1305376 / EndpointDiscoveryElement.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Discovery.Configuration { using System.Configuration; using System.Diagnostics.CodeAnalysis; using System.Runtime; using System.ServiceModel.Configuration; using System.Xml.Linq; using System.Xml; public sealed class EndpointDiscoveryElement : BehaviorExtensionElement { ConfigurationPropertyCollection properties; public EndpointDiscoveryElement() { } [SuppressMessage(FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule, Justification = "This property is defined by the base class to determine the type of the behavior.")] public override Type BehaviorType { get { return typeof(EndpointDiscoveryBehavior); } } [ConfigurationProperty(ConfigurationStrings.Enabled, DefaultValue = true)] public bool Enabled { get { return (bool)base[ConfigurationStrings.Enabled]; } set { base[ConfigurationStrings.Enabled] = value; } } [ConfigurationProperty(ConfigurationStrings.Types)] [SuppressMessage( FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyNameRule, Justification = "The configuration name for this element is 'types'.")] public ContractTypeNameElementCollection ContractTypeNames { get { return (ContractTypeNameElementCollection)base[ConfigurationStrings.Types]; } } [ConfigurationProperty(ConfigurationStrings.Scopes)] public ScopeElementCollection Scopes { get { return (ScopeElementCollection)base[ConfigurationStrings.Scopes]; } } [ConfigurationProperty(ConfigurationStrings.Extensions)] public XmlElementElementCollection Extensions { get { return (XmlElementElementCollection)base[ConfigurationStrings.Extensions]; } } protected override ConfigurationPropertyCollection Properties { get { if (this.properties == null) { ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection(); properties.Add( new ConfigurationProperty( ConfigurationStrings.Enabled, typeof(Boolean), true, null, null, ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.Types, typeof(ContractTypeNameElementCollection), null, null, null, ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.Scopes, typeof(ScopeElementCollection), null, null, null, ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.Extensions, typeof(XmlElementElementCollection), null, null, null, ConfigurationPropertyOptions.None)); this.properties = properties; } return this.properties; } } protected internal override object CreateBehavior() { EndpointDiscoveryBehavior behavior = new EndpointDiscoveryBehavior(); behavior.Enabled = Enabled; if ((Scopes != null) && (Scopes.Count > 0)) { foreach (ScopeElement scopeElement in Scopes) { behavior.Scopes.Add(scopeElement.Scope); } } if (ContractTypeNames != null) { foreach (ContractTypeNameElement contractTypeNameElement in ContractTypeNames) { behavior.ContractTypeNames.Add( new XmlQualifiedName(contractTypeNameElement.Name, contractTypeNameElement.Namespace)); } } if ((Extensions != null) && (Extensions.Count > 0)) { foreach (XmlElementElement xmlElement in Extensions) { behavior.Extensions.Add(XElement.Parse(xmlElement.XmlElement.OuterXml)); } } return behavior; } } } // 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
- GPRECT.cs
- HtmlControl.cs
- DrawingAttributesDefaultValueFactory.cs
- TextEditorContextMenu.cs
- EntityConnectionStringBuilder.cs
- Version.cs
- XPathDescendantIterator.cs
- XsltException.cs
- RelatedPropertyManager.cs
- XamlToRtfWriter.cs
- CmsInterop.cs
- DataTablePropertyDescriptor.cs
- TransportContext.cs
- connectionpool.cs
- HttpModuleAction.cs
- CodeChecksumPragma.cs
- Vector3DCollection.cs
- XmlObjectSerializerContext.cs
- EmptyQuery.cs
- InputScope.cs
- ContainerControl.cs
- MdiWindowListStrip.cs
- DataTableCollection.cs
- WinFormsUtils.cs
- SafeNativeMethods.cs
- HashRepartitionStream.cs
- IProvider.cs
- CurrencyManager.cs
- Duration.cs
- ConfigXmlSignificantWhitespace.cs
- InvalidFilterCriteriaException.cs
- EntityDataSourceWrapperCollection.cs
- GrammarBuilderPhrase.cs
- HideDisabledControlAdapter.cs
- FixedSOMFixedBlock.cs
- UIElementPropertyUndoUnit.cs
- DataGridTableCollection.cs
- FixedDocumentSequencePaginator.cs
- AutomationProperties.cs
- OutputChannelBinder.cs
- AnonymousIdentificationSection.cs
- WindowsGraphics2.cs
- HashSetEqualityComparer.cs
- ToolStripDesignerAvailabilityAttribute.cs
- ProtocolsConfiguration.cs
- FunctionDescription.cs
- MimeReturn.cs
- ContractAdapter.cs
- CompositeFontFamily.cs
- Action.cs
- SQLBinary.cs
- SurrogateEncoder.cs
- ListViewSelectEventArgs.cs
- ControlDesigner.cs
- DataGridCellsPanel.cs
- _ScatterGatherBuffers.cs
- NativeMethods.cs
- BinaryFormatterSinks.cs
- SuppressMessageAttribute.cs
- UnsafeNetInfoNativeMethods.cs
- SiteMapDataSource.cs
- InvalidWMPVersionException.cs
- ActivityLocationReferenceEnvironment.cs
- DataGridColumnHeader.cs
- PartitionResolver.cs
- IsolatedStorage.cs
- NameNode.cs
- FixedSOMSemanticBox.cs
- ToolStripArrowRenderEventArgs.cs
- ISAPIWorkerRequest.cs
- BamlLocalizableResource.cs
- SHA1CryptoServiceProvider.cs
- IdnElement.cs
- WebPartZoneDesigner.cs
- TargetConverter.cs
- Typeface.cs
- TdsParserStaticMethods.cs
- TemplateEditingService.cs
- WebControlsSection.cs
- HitTestWithPointDrawingContextWalker.cs
- SystemIPv6InterfaceProperties.cs
- PerfCounters.cs
- Pair.cs
- TagNameToTypeMapper.cs
- FilterException.cs
- TypedDataSourceCodeGenerator.cs
- SelectionChangedEventArgs.cs
- WebControl.cs
- DataGridViewImageCell.cs
- Translator.cs
- TreeViewItem.cs
- TextServicesCompartment.cs
- IteratorDescriptor.cs
- LineSegment.cs
- SafeRegistryHandle.cs
- ButtonBase.cs
- DbConnectionPool.cs
- CodeStatementCollection.cs
- COM2IProvidePropertyBuilderHandler.cs
- VoiceInfo.cs