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
- HttpModuleAction.cs
- SafeEventLogReadHandle.cs
- HostingEnvironmentWrapper.cs
- ByteRangeDownloader.cs
- FormViewInsertedEventArgs.cs
- FrameworkElementFactory.cs
- LOSFormatter.cs
- CodeGotoStatement.cs
- AliasGenerator.cs
- WsdlBuildProvider.cs
- Stream.cs
- ToolBarOverflowPanel.cs
- EncryptedKeyIdentifierClause.cs
- ExpressionBinding.cs
- Visual3DCollection.cs
- NetworkStream.cs
- Encoder.cs
- PanelStyle.cs
- HtmlShim.cs
- ZipIOCentralDirectoryBlock.cs
- XmlEncodedRawTextWriter.cs
- DataGridViewRowsRemovedEventArgs.cs
- HeaderCollection.cs
- Panel.cs
- SqlRetyper.cs
- DataGridViewColumnStateChangedEventArgs.cs
- EventLogTraceListener.cs
- RegexBoyerMoore.cs
- HGlobalSafeHandle.cs
- SignatureHelper.cs
- SchemaImporterExtensionsSection.cs
- MergeFilterQuery.cs
- DataGridToolTip.cs
- DataBoundControl.cs
- ColorDialog.cs
- DynamicUpdateCommand.cs
- TokenCreationException.cs
- OdbcEnvironmentHandle.cs
- AlphabeticalEnumConverter.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- SystemResourceKey.cs
- ResourceProperty.cs
- ipaddressinformationcollection.cs
- DataBoundLiteralControl.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- Mutex.cs
- ResXResourceReader.cs
- OpCodes.cs
- XmlHelper.cs
- TimeoutException.cs
- DesignerHierarchicalDataSourceView.cs
- GeometryDrawing.cs
- PropertyConverter.cs
- CodeTypeParameterCollection.cs
- HttpCapabilitiesSectionHandler.cs
- SafeHandles.cs
- SafeProcessHandle.cs
- WebConfigurationFileMap.cs
- MatrixCamera.cs
- RelationshipConverter.cs
- WpfKnownMemberInvoker.cs
- AmbientValueAttribute.cs
- MetaTableHelper.cs
- DataGridItemAutomationPeer.cs
- DecoderBestFitFallback.cs
- RowUpdatingEventArgs.cs
- Canvas.cs
- WebBrowserSiteBase.cs
- TextCompositionEventArgs.cs
- BookmarkUndoUnit.cs
- SubMenuStyleCollectionEditor.cs
- SoapTypeAttribute.cs
- StateManagedCollection.cs
- StringArrayConverter.cs
- PointHitTestResult.cs
- XMLDiffLoader.cs
- AttributeSetAction.cs
- ToolStripArrowRenderEventArgs.cs
- BamlRecordWriter.cs
- Int16Storage.cs
- QuadraticEase.cs
- QilSortKey.cs
- SystemIPInterfaceStatistics.cs
- SafeProcessHandle.cs
- RectangleGeometry.cs
- Drawing.cs
- EventMappingSettings.cs
- XmlSchemaInferenceException.cs
- ContainerVisual.cs
- DescendentsWalkerBase.cs
- PageCatalogPartDesigner.cs
- JulianCalendar.cs
- COM2PictureConverter.cs
- regiisutil.cs
- KeyedCollection.cs
- XmlQuerySequence.cs
- nulltextcontainer.cs
- TreeBuilderXamlTranslator.cs
- RegexCode.cs
- GetWinFXPath.cs