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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextPattern.cs
- ToolStripDropTargetManager.cs
- HistoryEventArgs.cs
- ConfigXmlCDataSection.cs
- DataObjectSettingDataEventArgs.cs
- GlyphRunDrawing.cs
- KeyGesture.cs
- TypedTableBaseExtensions.cs
- ReliabilityContractAttribute.cs
- AddingNewEventArgs.cs
- ToolboxItemLoader.cs
- LineBreakRecord.cs
- SQLInt32.cs
- LazyTextWriterCreator.cs
- PackageDigitalSignatureManager.cs
- Span.cs
- TextDecoration.cs
- MenuItem.cs
- JavaScriptSerializer.cs
- HtmlMeta.cs
- SafeNativeMethodsMilCoreApi.cs
- Queue.cs
- TypeSource.cs
- ToolStripPanelRenderEventArgs.cs
- PropertyGrid.cs
- WindowAutomationPeer.cs
- WmiEventSink.cs
- DesignerDataRelationship.cs
- MobileControlsSection.cs
- ComboBox.cs
- URLAttribute.cs
- QueryResponse.cs
- LineSegment.cs
- TextContainerHelper.cs
- EntityDataSourceDataSelection.cs
- OrderToken.cs
- InkCanvasSelectionAdorner.cs
- PermissionListSet.cs
- AnnotationResourceCollection.cs
- CriticalFinalizerObject.cs
- NonBatchDirectoryCompiler.cs
- GridViewColumn.cs
- SystemIcmpV6Statistics.cs
- ConfigurationSection.cs
- ImageIndexConverter.cs
- DynamicPropertyReader.cs
- EdmValidator.cs
- ConfigXmlSignificantWhitespace.cs
- WsdlHelpGeneratorElement.cs
- MeasureData.cs
- SectionInformation.cs
- PointAnimation.cs
- SafeRightsManagementSessionHandle.cs
- AssemblyBuilderData.cs
- OleDbSchemaGuid.cs
- TrustManagerPromptUI.cs
- MemoryStream.cs
- TableParagraph.cs
- CreateUserWizardStep.cs
- XPathMultyIterator.cs
- ProvidePropertyAttribute.cs
- MethodBody.cs
- Lasso.cs
- DataGridViewSortCompareEventArgs.cs
- CommonXSendMessage.cs
- ConfigurationLocationCollection.cs
- Int32Converter.cs
- SubstitutionDesigner.cs
- XLinq.cs
- SessionEndedEventArgs.cs
- XamlStream.cs
- BooleanFacetDescriptionElement.cs
- DetailsViewInsertEventArgs.cs
- ConfigXmlElement.cs
- ProcessManager.cs
- RecordConverter.cs
- PackageProperties.cs
- DbDataAdapter.cs
- MessageBox.cs
- ActivationWorker.cs
- Wizard.cs
- ScaleTransform.cs
- MulticastOption.cs
- DefaultBinder.cs
- HyperLinkColumn.cs
- ByeOperationAsyncResult.cs
- HtmlHead.cs
- Merger.cs
- SqlGenericUtil.cs
- SimpleWorkerRequest.cs
- TextDecoration.cs
- WebPartDescription.cs
- XmlAnyAttributeAttribute.cs
- Schema.cs
- PolyQuadraticBezierSegment.cs
- XamlTypeMapper.cs
- HttpStaticObjectsCollectionBase.cs
- ObjectDataSourceView.cs
- XmlAttributeProperties.cs
- EdmEntityTypeAttribute.cs