Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / NetFx35 / System.ServiceModel.Web / System / ServiceModel / Web / WebGetAttribute.cs / 1 / 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, 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; } } } } // 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
- RuleValidation.cs
- Boolean.cs
- IdentityHolder.cs
- CommandSet.cs
- FilterableData.cs
- MediaCommands.cs
- XmlBinaryReader.cs
- Dynamic.cs
- BuiltInPermissionSets.cs
- FormClosingEvent.cs
- DataServiceHost.cs
- CodeMemberMethod.cs
- securitycriticaldataClass.cs
- Grant.cs
- mactripleDES.cs
- DataGridPagerStyle.cs
- CompatibleIComparer.cs
- GridViewUpdatedEventArgs.cs
- SQLBinaryStorage.cs
- Configuration.cs
- WebPartCloseVerb.cs
- TypeSystemProvider.cs
- CountAggregationOperator.cs
- PageAsyncTask.cs
- PersonalizationAdministration.cs
- InlineUIContainer.cs
- CollectionView.cs
- EventProviderWriter.cs
- GridViewRowEventArgs.cs
- TypeBuilder.cs
- BrushConverter.cs
- PartialTrustHelpers.cs
- Function.cs
- DtrList.cs
- Positioning.cs
- ChildDocumentBlock.cs
- RegistryConfigurationProvider.cs
- CellParagraph.cs
- Stopwatch.cs
- Route.cs
- MediaCommands.cs
- GraphicsContainer.cs
- WindowsTitleBar.cs
- DesignerCategoryAttribute.cs
- StorageEntitySetMapping.cs
- PlatformCulture.cs
- XmlImplementation.cs
- SoapExtensionTypeElementCollection.cs
- EventLogConfiguration.cs
- UrlParameterReader.cs
- _AcceptOverlappedAsyncResult.cs
- HwndStylusInputProvider.cs
- ToolboxItemCollection.cs
- DataGridViewLayoutData.cs
- ExtendedProperty.cs
- RequestCacheManager.cs
- ThreadAttributes.cs
- GlyphTypeface.cs
- CodeParameterDeclarationExpression.cs
- ToolStripItemEventArgs.cs
- EventMappingSettings.cs
- GetTokenRequest.cs
- ReadingWritingEntityEventArgs.cs
- StyleBamlTreeBuilder.cs
- IisTraceWebEventProvider.cs
- ControlDesigner.cs
- XmlAttributes.cs
- ScriptManagerProxy.cs
- StructuredType.cs
- WebFaultException.cs
- AxParameterData.cs
- ImageMap.cs
- InfoCardProofToken.cs
- CustomGrammar.cs
- PropertySegmentSerializer.cs
- SafeThreadHandle.cs
- HttpCachePolicy.cs
- XmlParserContext.cs
- TypeDelegator.cs
- TemplatedWizardStep.cs
- SafeReversePInvokeHandle.cs
- ValueConversionAttribute.cs
- SafeTimerHandle.cs
- PartitionResolver.cs
- DbException.cs
- CodeParameterDeclarationExpression.cs
- HorizontalAlignConverter.cs
- Volatile.cs
- XamlReader.cs
- Item.cs
- PropertyGeneratedEventArgs.cs
- ListViewItem.cs
- PointHitTestResult.cs
- MetafileHeaderWmf.cs
- Tablet.cs
- Int32Rect.cs
- TableLayoutPanel.cs
- CompiledIdentityConstraint.cs
- AuthenticateEventArgs.cs
- FixedDocument.cs