Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / Configuration / DiscoveryClientElement.cs / 1305376 / DiscoveryClientElement.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.Channels; using System.ServiceModel.Configuration; using SR2 = System.ServiceModel.Discovery.SR; [Fx.Tag.XamlVisible(false)] public sealed class DiscoveryClientElement : BindingElementExtensionElement { ConfigurationPropertyCollection properties; [ConfigurationProperty(ConfigurationStrings.Endpoint)] [SuppressMessage( FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyNameRule, Justification = "The configuration name for this element is 'endpoint'.")] public ChannelEndpointElement DiscoveryEndpoint { get { return (ChannelEndpointElement)base[ConfigurationStrings.Endpoint]; } } [ConfigurationProperty(ConfigurationStrings.FindCriteria)] public FindCriteriaElement FindCriteria { get { return (FindCriteriaElement)base[ConfigurationStrings.FindCriteria]; } } [SuppressMessage( FxCop.Category.Configuration, FxCop.Rule.ConfigurationPropertyAttributeRule, Justification = "This property only overrides the base property.")] public override Type BindingElementType { get { return typeof(DiscoveryClientBindingElement); } } protected override ConfigurationPropertyCollection Properties { get { if (this.properties == null) { ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection(); properties.Add( new ConfigurationProperty( ConfigurationStrings.Endpoint, typeof(ChannelEndpointElement), null, null, null, ConfigurationPropertyOptions.None)); properties.Add( new ConfigurationProperty( ConfigurationStrings.FindCriteria, typeof(FindCriteriaElement), null, null, null, ConfigurationPropertyOptions.None)); this.properties = properties; } return this.properties; } } public override void ApplyConfiguration(BindingElement bindingElement) { base.ApplyConfiguration(bindingElement); DiscoveryClientBindingElement discoveryClientBindingElement = (DiscoveryClientBindingElement)bindingElement; if (PropertyValueOrigin.Default == this.ElementInformation.Properties[ConfigurationStrings.Endpoint].ValueOrigin) { discoveryClientBindingElement.DiscoveryEndpointProvider = new ConfigurationDiscoveryEndpointProvider(); } else { discoveryClientBindingElement.DiscoveryEndpointProvider = new ConfigurationDiscoveryEndpointProvider(this.DiscoveryEndpoint); } this.FindCriteria.ApplyConfiguration(discoveryClientBindingElement.FindCriteria); } public override void CopyFrom(ServiceModelExtensionElement from) { base.CopyFrom(from); DiscoveryClientElement source = (DiscoveryClientElement)from; if (PropertyValueOrigin.Default == this.ElementInformation.Properties[ConfigurationStrings.Endpoint].ValueOrigin) { ChannelEndpointElement udpChannelEndpointElement = ConfigurationUtility.GetDefaultDiscoveryEndpointElement(); udpChannelEndpointElement.Copy(source.DiscoveryEndpoint); } else { this.DiscoveryEndpoint.Copy(source.DiscoveryEndpoint); } this.FindCriteria.CopyFrom(source.FindCriteria); } protected internal override BindingElement CreateBindingElement() { DiscoveryClientBindingElement discoveryClientBindingElement = new DiscoveryClientBindingElement(); this.ApplyConfiguration(discoveryClientBindingElement); return discoveryClientBindingElement; } protected internal override void InitializeFrom(BindingElement bindingElement) { throw FxTrace.Exception.AsError( new NotSupportedException(SR2.DiscoveryConfigInitializeFromNotSupported)); } } } // 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
- NumericUpDown.cs
- DateTimeOffsetStorage.cs
- OdbcInfoMessageEvent.cs
- LowerCaseStringConverter.cs
- DataSetMappper.cs
- TrustLevelCollection.cs
- EtwTrace.cs
- EntityStoreSchemaGenerator.cs
- StringPropertyBuilder.cs
- EdmItemCollection.OcAssemblyCache.cs
- PackageProperties.cs
- TemplateControlBuildProvider.cs
- GridSplitter.cs
- serverconfig.cs
- DragSelectionMessageFilter.cs
- ReadOnlyDictionary.cs
- Row.cs
- DbConnectionPoolOptions.cs
- XmlILConstructAnalyzer.cs
- BevelBitmapEffect.cs
- WpfWebRequestHelper.cs
- ISCIIEncoding.cs
- BlockExpression.cs
- DataGridViewCellEventArgs.cs
- DesignerMetadata.cs
- SchemaSetCompiler.cs
- TransactionCache.cs
- HyperLinkColumn.cs
- DesignerAutoFormat.cs
- XmlAggregates.cs
- ControlParser.cs
- SqlInternalConnectionTds.cs
- HitTestResult.cs
- RunClient.cs
- DataFormats.cs
- EventLogInternal.cs
- Debugger.cs
- DataContractSerializer.cs
- DbDataAdapter.cs
- XmlComplianceUtil.cs
- XsltOutput.cs
- StringUtil.cs
- OutputWindow.cs
- PartitionResolver.cs
- StrongBox.cs
- dataobject.cs
- WebPageTraceListener.cs
- GestureRecognitionResult.cs
- SettingsBindableAttribute.cs
- ListParagraph.cs
- DataGridViewTopRowAccessibleObject.cs
- MobileTextWriter.cs
- HandleCollector.cs
- TranslateTransform.cs
- ListViewInsertedEventArgs.cs
- MatrixTransform3D.cs
- HttpResponseInternalBase.cs
- PanelContainerDesigner.cs
- WebSysDefaultValueAttribute.cs
- TableLayout.cs
- TraceUtility.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- EdmToObjectNamespaceMap.cs
- SchemaSetCompiler.cs
- IIS7UserPrincipal.cs
- TraceSection.cs
- Compress.cs
- PtsContext.cs
- SettingsSavedEventArgs.cs
- HGlobalSafeHandle.cs
- AuthenticationConfig.cs
- SetStateDesigner.cs
- SelectedDatesCollection.cs
- PersonalizationEntry.cs
- MetafileHeaderWmf.cs
- RegexBoyerMoore.cs
- LayoutTableCell.cs
- AuthenticationManager.cs
- Matrix3D.cs
- SynchronizedInputPattern.cs
- RegexGroup.cs
- Baml2006ReaderFrame.cs
- WriteableOnDemandStream.cs
- CompModSwitches.cs
- ContainerControl.cs
- MDIControlStrip.cs
- AppDomainCompilerProxy.cs
- UrlAuthorizationModule.cs
- HostingEnvironmentSection.cs
- AxisAngleRotation3D.cs
- TrackBarRenderer.cs
- EventlogProvider.cs
- DesignObjectWrapper.cs
- XmlSequenceWriter.cs
- SessionStateSection.cs
- SchemaDeclBase.cs
- CmsInterop.cs
- RegexParser.cs
- WindowsFont.cs
- XmlUtil.cs