Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.ServiceModel.Web / System / ServiceModel / Web / WebGetAttribute.cs / 1305376 / WebGetAttribute.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Web { using System; using System.ServiceModel.Description; using System.ServiceModel.Dispatcher; using System.ServiceModel.Channels; using System.ServiceModel.Web; using System.ServiceModel.Administration; using System.Collections.Generic; [AttributeUsage(AttributeTargets.Method)] public sealed class WebGetAttribute : Attribute, IOperationContractAttributeProvider, IOperationBehavior, IWmiInstanceProvider { WebMessageBodyStyle bodyStyle; bool isBodyStyleDefined; bool isRequestMessageFormatSet; bool isResponseMessageFormatSet; WebMessageFormat requestMessageFormat; WebMessageFormat responseMessageFormat; string uriTemplate; // Note: HttpTransferEndpointBehavior interprets uriTemplate as: null means 'no opinion', whereas string.Empty means relative path of "" public WebGetAttribute() { } public WebMessageBodyStyle BodyStyle { get { return this.bodyStyle; } set { if (!WebMessageBodyStyleHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value")); } this.bodyStyle = value; this.isBodyStyleDefined = true; } } public bool IsBodyStyleSetExplicitly { get { return this.isBodyStyleDefined; } } public bool IsRequestFormatSetExplicitly { get { return this.isRequestMessageFormatSet; } } public bool IsResponseFormatSetExplicitly { get { return this.isResponseMessageFormatSet; } } public WebMessageFormat RequestFormat { get { return this.requestMessageFormat; } set { if (!WebMessageFormatHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value")); } this.requestMessageFormat = value; this.isRequestMessageFormatSet = true; } } public WebMessageFormat ResponseFormat { get { return this.responseMessageFormat; } set { if (!WebMessageFormatHelper.IsDefined(value)) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value")); } this.responseMessageFormat = value; this.isResponseMessageFormatSet = true; } } public string UriTemplate { get { return this.uriTemplate; } set { this.uriTemplate = value; } } void IOperationBehavior.AddBindingParameters(OperationDescription operationDescription, BindingParameterCollection bindingParameters) { }// do nothing void IOperationBehavior.ApplyClientBehavior(OperationDescription operationDescription, ClientOperation clientOperation) { }// do nothing void IOperationBehavior.ApplyDispatchBehavior(OperationDescription operationDescription, DispatchOperation dispatchOperation) { }// do nothing void IOperationBehavior.Validate(OperationDescription operationDescription) { }// do nothing void IWmiInstanceProvider.FillInstance(IWmiInstance wmiInstance) { if (wmiInstance == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument("wmiInstance"); } wmiInstance.SetProperty("BodyStyle", this.BodyStyle.ToString()); wmiInstance.SetProperty("IsBodyStyleSetExplicitly", this.IsBodyStyleSetExplicitly.ToString()); wmiInstance.SetProperty("RequestFormat", this.RequestFormat.ToString()); wmiInstance.SetProperty("IsRequestFormatSetExplicitly", this.IsRequestFormatSetExplicitly.ToString()); wmiInstance.SetProperty("ResponseFormat", this.ResponseFormat.ToString()); wmiInstance.SetProperty("IsResponseFormatSetExplicitly", this.IsResponseFormatSetExplicitly.ToString()); wmiInstance.SetProperty("UriTemplate", this.UriTemplate); } string IWmiInstanceProvider.GetInstanceType() { return "WebGetAttribute"; } internal WebMessageBodyStyle GetBodyStyleOrDefault(WebMessageBodyStyle defaultStyle) { if (this.IsBodyStyleSetExplicitly) { return this.BodyStyle; } else { return defaultStyle; } } OperationContractAttribute IOperationContractAttributeProvider.GetOperationContractAttribute() { return new OperationContractAttribute(); } } } // 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
- MarkerProperties.cs
- HyperLinkStyle.cs
- HttpTransportManager.cs
- FloatUtil.cs
- LongValidatorAttribute.cs
- ConfigXmlAttribute.cs
- XsltArgumentList.cs
- BaseParser.cs
- ContainerParagraph.cs
- WaitForChangedResult.cs
- PersistenceTypeAttribute.cs
- BamlMapTable.cs
- ScriptIgnoreAttribute.cs
- MetadataWorkspace.cs
- DateTimeUtil.cs
- SecurityProtocolFactory.cs
- XmlAnyAttributeAttribute.cs
- SiteMapNodeItem.cs
- PlacementWorkspace.cs
- ScrollPattern.cs
- MyContact.cs
- DerivedKeySecurityTokenStub.cs
- HandlerFactoryCache.cs
- SmtpSection.cs
- XmlWrappingReader.cs
- ReaderOutput.cs
- DataGridViewLayoutData.cs
- oledbmetadatacollectionnames.cs
- CalendarButtonAutomationPeer.cs
- ProjectionAnalyzer.cs
- ApplicationId.cs
- SchemaImporterExtensionElementCollection.cs
- IPPacketInformation.cs
- UInt32.cs
- WebPartConnectionsEventArgs.cs
- HtmlMeta.cs
- WebPartMinimizeVerb.cs
- TextModifierScope.cs
- RequestCacheManager.cs
- securitymgrsite.cs
- VisualStateChangedEventArgs.cs
- Empty.cs
- SerializationObjectManager.cs
- ViewBase.cs
- NetStream.cs
- SchemaImporterExtensionElement.cs
- Repeater.cs
- RSACryptoServiceProvider.cs
- MissingFieldException.cs
- ExpressionNode.cs
- HMACSHA384.cs
- ConnectionProviderAttribute.cs
- RepeatButton.cs
- MessageQuerySet.cs
- MetadataArtifactLoaderCompositeFile.cs
- SqlOuterApplyReducer.cs
- TryCatch.cs
- SimpleTypesSurrogate.cs
- UnionCodeGroup.cs
- DataSourceProvider.cs
- TemplateInstanceAttribute.cs
- SelectionProviderWrapper.cs
- TrustManager.cs
- DataRowView.cs
- TemplateKeyConverter.cs
- PropertyBuilder.cs
- RowBinding.cs
- UIElementPropertyUndoUnit.cs
- SslStream.cs
- FixedTextContainer.cs
- RecipientInfo.cs
- CounterSampleCalculator.cs
- XmlAggregates.cs
- AlternateViewCollection.cs
- ControlEvent.cs
- DateTimeStorage.cs
- Model3D.cs
- DbgUtil.cs
- AssemblyResourceLoader.cs
- KeyPressEvent.cs
- VirtualDirectoryMappingCollection.cs
- TraceFilter.cs
- RandomNumberGenerator.cs
- ItemsPresenter.cs
- ContainerVisual.cs
- DataException.cs
- ParseChildrenAsPropertiesAttribute.cs
- CdpEqualityComparer.cs
- ClientData.cs
- RIPEMD160Managed.cs
- ComEventsMethod.cs
- DBAsyncResult.cs
- ImageUrlEditor.cs
- dbenumerator.cs
- isolationinterop.cs
- XmlComment.cs
- FontDialog.cs
- StrongNameMembershipCondition.cs
- Pkcs9Attribute.cs
- ComponentDesigner.cs