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
- FilterFactory.cs
- UnauthorizedWebPart.cs
- SafeArrayTypeMismatchException.cs
- sqlinternaltransaction.cs
- FormParameter.cs
- SimpleRecyclingCache.cs
- FormViewUpdateEventArgs.cs
- DashStyles.cs
- DetailsViewPagerRow.cs
- documentsequencetextpointer.cs
- FormsAuthenticationEventArgs.cs
- VScrollProperties.cs
- HeaderFilter.cs
- SapiRecoContext.cs
- SqlGatherConsumedAliases.cs
- DBPropSet.cs
- ProgressBarHighlightConverter.cs
- ApplyTemplatesAction.cs
- HybridDictionary.cs
- ConfigXmlComment.cs
- RegexReplacement.cs
- CustomLineCap.cs
- TextUtf8RawTextWriter.cs
- OleAutBinder.cs
- OverrideMode.cs
- UdpChannelListener.cs
- IndexerHelper.cs
- DPAPIProtectedConfigurationProvider.cs
- DataErrorValidationRule.cs
- CancelRequestedRecord.cs
- TextEncodedRawTextWriter.cs
- ChameleonKey.cs
- PrivateFontCollection.cs
- XmlObjectSerializerWriteContextComplex.cs
- ParameterCollection.cs
- TimelineGroup.cs
- PointHitTestResult.cs
- StringFreezingAttribute.cs
- SingleSelectRootGridEntry.cs
- HttpMethodConstraint.cs
- BrowserCapabilitiesFactory35.cs
- RadioButtonAutomationPeer.cs
- Pen.cs
- ObjectStorage.cs
- Intellisense.cs
- OperationAbortedException.cs
- MenuItemStyleCollection.cs
- SendSecurityHeaderElementContainer.cs
- Font.cs
- XamlToRtfParser.cs
- CodeTypeDelegate.cs
- Rotation3DAnimation.cs
- Point4D.cs
- MeasurementDCInfo.cs
- GeometryDrawing.cs
- HttpResponse.cs
- Header.cs
- DataGridViewCellValidatingEventArgs.cs
- BooleanExpr.cs
- DataGridViewEditingControlShowingEventArgs.cs
- BooleanExpr.cs
- X509Certificate2Collection.cs
- EventMappingSettingsCollection.cs
- TextRunTypographyProperties.cs
- SharedUtils.cs
- XmlCDATASection.cs
- LocalizableAttribute.cs
- MsmqBindingMonitor.cs
- SQLBoolean.cs
- WebUtility.cs
- ItemDragEvent.cs
- MetaDataInfo.cs
- DocumentSequence.cs
- DetailsViewRow.cs
- FixUp.cs
- GeometryModel3D.cs
- DetailsViewPageEventArgs.cs
- WindowsSysHeader.cs
- BaseCollection.cs
- PropertyMap.cs
- X509CertificateCollection.cs
- Visual.cs
- Shape.cs
- x509store.cs
- SoapAttributes.cs
- JoinCqlBlock.cs
- TypeInitializationException.cs
- XsltFunctions.cs
- GenericTextProperties.cs
- xamlnodes.cs
- HttpCachePolicyWrapper.cs
- IEnumerable.cs
- CredentialCache.cs
- TreeNodeClickEventArgs.cs
- SecurityHeaderLayout.cs
- KeyboardEventArgs.cs
- VirtualPath.cs
- OleDbRowUpdatedEvent.cs
- TimeIntervalCollection.cs
- TextEditorParagraphs.cs