Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / NetFx35 / System.ServiceModel.Web / System / ServiceModel / Web / IncomingWebRequestContext.cs / 1 / IncomingWebRequestContext.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- #pragma warning disable 1634, 1691 namespace System.ServiceModel.Web { using System; using System.Globalization; using System.Diagnostics.CodeAnalysis; using System.ServiceModel; using System.ServiceModel.Channels; using System.ServiceModel.Description; using System.ServiceModel.Dispatcher; using System.Net; using System.Collections.ObjectModel; using System.Collections.Specialized; public class IncomingWebRequestContext { internal const string UriTemplateMatchResultsPropertyName = "UriTemplateMatchResults"; OperationContext operationContext; internal IncomingWebRequestContext(OperationContext operationContext) { Fx.Assert(operationContext != null, "operationContext is null"); this.operationContext = operationContext; } public string Accept { get { return EnsureMessageProperty().Headers[HttpRequestHeader.Accept]; } } public long ContentLength { get { return long.Parse(this.EnsureMessageProperty().Headers[HttpRequestHeader.ContentLength], CultureInfo.InvariantCulture); } } public string ContentType { get { return this.EnsureMessageProperty().Headers[HttpRequestHeader.ContentType]; } } public WebHeaderCollection Headers { get { return this.EnsureMessageProperty().Headers; } } public string Method { get { return this.EnsureMessageProperty().Method; } } public UriTemplateMatch UriTemplateMatch { get { if (this.operationContext.IncomingMessageProperties.ContainsKey(UriTemplateMatchResultsPropertyName)) { return this.operationContext.IncomingMessageProperties[UriTemplateMatchResultsPropertyName] as UriTemplateMatch; } else { return null; } } set { this.operationContext.IncomingMessageProperties[UriTemplateMatchResultsPropertyName] = value; } } public string UserAgent { get { return this.EnsureMessageProperty().Headers[HttpRequestHeader.UserAgent]; } } HttpRequestMessageProperty MessageProperty { get { if (operationContext.IncomingMessageProperties == null) { return null; } if (!operationContext.IncomingMessageProperties.ContainsKey(HttpRequestMessageProperty.Name)) { return null; } return operationContext.IncomingMessageProperties[HttpRequestMessageProperty.Name] as HttpRequestMessageProperty; } } HttpRequestMessageProperty EnsureMessageProperty() { if (this.MessageProperty == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException( SR2.GetString(SR2.HttpContextNoIncomingMessageProperty, typeof(HttpRequestMessageProperty).Name))); } return this.MessageProperty; } } } // 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
- ModuleElement.cs
- CustomAttributeSerializer.cs
- CodeValidator.cs
- VisualBasicDesignerHelper.cs
- MetadataArtifactLoaderCompositeFile.cs
- StyleCollection.cs
- ClientApiGenerator.cs
- ResourceBinder.cs
- VarRefManager.cs
- SiteMapDesignerDataSourceView.cs
- TextBoxRenderer.cs
- Triplet.cs
- WebPartVerbsEventArgs.cs
- ProxyWebPart.cs
- Rfc2898DeriveBytes.cs
- Propagator.ExtentPlaceholderCreator.cs
- HostedHttpRequestAsyncResult.cs
- DataGridViewCellStateChangedEventArgs.cs
- DefaultBinder.cs
- StorageComplexTypeMapping.cs
- StateMachineWorkflowDesigner.cs
- MetadataArtifactLoaderCompositeResource.cs
- PreservationFileReader.cs
- GiveFeedbackEvent.cs
- ParseChildrenAsPropertiesAttribute.cs
- DateRangeEvent.cs
- CharAnimationUsingKeyFrames.cs
- ColorComboBox.cs
- AssemblyAttributes.cs
- TimeoutHelper.cs
- MutexSecurity.cs
- ExplicitDiscriminatorMap.cs
- XmlSerializerVersionAttribute.cs
- DrawListViewItemEventArgs.cs
- DbExpressionRules.cs
- KeyInstance.cs
- bidPrivateBase.cs
- ResolvedKeyFrameEntry.cs
- ReservationNotFoundException.cs
- UnionCodeGroup.cs
- Span.cs
- CssClassPropertyAttribute.cs
- XmlSchemaAppInfo.cs
- StrokeRenderer.cs
- HttpApplicationStateWrapper.cs
- QilInvokeLateBound.cs
- WmlListAdapter.cs
- ItemsControlAutomationPeer.cs
- BinaryOperationBinder.cs
- SmtpReplyReader.cs
- SerializerDescriptor.cs
- BaseDataListActionList.cs
- MetabaseServerConfig.cs
- PeerNameRecord.cs
- GridViewRowCollection.cs
- RequestContextBase.cs
- SizeIndependentAnimationStorage.cs
- InputBindingCollection.cs
- StatusBar.cs
- NullableDecimalSumAggregationOperator.cs
- TimerElapsedEvenArgs.cs
- BaseProcessor.cs
- DelegatingTypeDescriptionProvider.cs
- NodeFunctions.cs
- MediaPlayer.cs
- FunctionUpdateCommand.cs
- XmlConverter.cs
- PointKeyFrameCollection.cs
- ToolStripSeparator.cs
- FillRuleValidation.cs
- RegisteredHiddenField.cs
- TransformGroup.cs
- CustomValidator.cs
- ObjectPersistData.cs
- DataGrid.cs
- StringInfo.cs
- NetworkCredential.cs
- AssemblyCache.cs
- PointKeyFrameCollection.cs
- UTF7Encoding.cs
- PKCS1MaskGenerationMethod.cs
- Timer.cs
- LocationSectionRecord.cs
- X509CertificateClaimSet.cs
- QuaternionConverter.cs
- SelectionItemProviderWrapper.cs
- SQLByte.cs
- CachedPathData.cs
- AutomationEventArgs.cs
- SyntaxCheck.cs
- XPathParser.cs
- AstTree.cs
- EpmSourceTree.cs
- OrderByExpression.cs
- GridView.cs
- DesignSurfaceManager.cs
- TypeViewSchema.cs
- DataStorage.cs
- ProfileParameter.cs
- WorkflowMarkupSerializationException.cs