Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / WebException.cs / 1305376 / WebException.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { using System; using System.Diagnostics.CodeAnalysis; using System.Runtime.Serialization; using System.Security.Permissions; /*++ Abstract: Contains the defintion for the WebException object. This is a subclass of Exception that contains a WebExceptionStatus and possible a reference to a WebResponse. --*/ ////// [Serializable] public class WebException : InvalidOperationException, ISerializable { private WebExceptionStatus m_Status = WebExceptionStatus.UnknownError; //Should be changed to GeneralFailure; private WebResponse m_Response; [NonSerialized] private WebExceptionInternalStatus m_InternalStatus = WebExceptionInternalStatus.RequestFatal; ////// Provides network communication exceptions to the application. /// /// This is the exception that is thrown by WebRequests when something untoward /// happens. It's a subclass of WebException that contains a WebExceptionStatus and possibly /// a reference to a WebResponse. The WebResponse is only present if we actually /// have a response from the remote server. /// ////// public WebException() { } ////// Creates a new instance of the ////// class with the default status /// from the /// values. /// /// public WebException(string message) : this(message, null) { } ////// Creates a new instance of the ///class with the specified error /// message. /// /// public WebException(string message, Exception innerException) : base(message, innerException) { } public WebException(string message, WebExceptionStatus status) : this(message, null, status, null) { } ////// Creates a new instance of the ///class with the specified error /// message and nested exception. /// /// Message - Message string for exception. /// InnerException - Exception that caused this exception. /// /// /// internal WebException(string message, WebExceptionStatus status, WebExceptionInternalStatus internalStatus, Exception innerException) : this(message, innerException, status, null, internalStatus) { } ////// Creates a new instance of the ///class with the specified error /// message and status. /// /// Message - Message string for exception. /// Status - Network status of exception /// /// public WebException(string message, Exception innerException, WebExceptionStatus status, WebResponse response) : this(message, null, innerException, status, response) { } internal WebException(string message, string data, Exception innerException, WebExceptionStatus status, WebResponse response) : base(message + (data != null ? ": '" + data + "'" : ""), innerException) { m_Status = status; m_Response = response; } internal WebException(string message, Exception innerException, WebExceptionStatus status, WebResponse response, WebExceptionInternalStatus internalStatus) : this(message, null, innerException, status, response, internalStatus) { } internal WebException(string message, string data, Exception innerException, WebExceptionStatus status, WebResponse response, WebExceptionInternalStatus internalStatus) : base(message + (data != null ? ": '" + data + "'" : ""), innerException) { m_Status = status; m_Response = response; m_InternalStatus = internalStatus; } protected WebException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext) { // m_Status = (WebExceptionStatus)serializationInfo.GetInt32("Status"); // m_InternalStatus = (WebExceptionInternalStatus)serializationInfo.GetInt32("InternalStatus"); } ////// Creates a new instance of the ///class with the specified error /// message, nested exception, status and response. /// /// Message - Message string for exception. /// InnerException - The exception that caused this one. /// Status - Network status of exception /// Response - The WebResponse we have. /// [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase", Justification = "System.dll is still using pre-v4 security model and needs this demand")] [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)] void ISerializable.GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext) { GetObjectData(serializationInfo, streamingContext); } [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase", Justification = "System.dll is still using pre-v4 security model and needs this demand")] [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext){ base.GetObjectData(serializationInfo, streamingContext); //serializationInfo.AddValue("Status", (int)m_Status, typeof(int)); //serializationInfo.AddValue("InternalStatus", (int)m_InternalStatus, typeof(int)); } /// /// public WebExceptionStatus Status { get { return m_Status; } } ////// Gets the status of the response. /// ////// public WebResponse Response { get { return m_Response; } } ////// Gets the error message returned from the remote host. /// ////// internal WebExceptionInternalStatus InternalStatus { get { return m_InternalStatus; } } }; // class WebException internal enum WebExceptionInternalStatus { RequestFatal = 0, ServicePointFatal = 1, Recoverable = 2, Isolated = 3, } } // namespace System.Net // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Gets the error message returned from the remote host. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Frame.cs
- ObjectAnimationUsingKeyFrames.cs
- ScriptIgnoreAttribute.cs
- QueryComponents.cs
- ZipIOModeEnforcingStream.cs
- FilterEventArgs.cs
- EventLog.cs
- RuntimeEnvironment.cs
- RegionData.cs
- TrustManagerMoreInformation.cs
- ElementProxy.cs
- WsdlServiceChannelBuilder.cs
- MonitorWrapper.cs
- EDesignUtil.cs
- StreamWriter.cs
- SiteMapDataSourceView.cs
- EventSetterHandlerConverter.cs
- ListSourceHelper.cs
- SSmlParser.cs
- ConfigurationManagerHelper.cs
- SafeCloseHandleCritical.cs
- MissingMethodException.cs
- TreeViewItem.cs
- ItemType.cs
- log.cs
- HtmlInputSubmit.cs
- MetadataItemEmitter.cs
- mactripleDES.cs
- FileSystemEventArgs.cs
- ThreadStateException.cs
- QilStrConcatenator.cs
- Decorator.cs
- CursorInteropHelper.cs
- HuffCodec.cs
- DataPagerField.cs
- RecognizerBase.cs
- Point3DCollection.cs
- LogExtentCollection.cs
- iisPickupDirectory.cs
- RangeValuePatternIdentifiers.cs
- CompilerResults.cs
- TableItemProviderWrapper.cs
- Matrix3DStack.cs
- BaseParagraph.cs
- DataGridViewLayoutData.cs
- DbModificationClause.cs
- ApplicationSecurityInfo.cs
- CanonicalizationDriver.cs
- BaseTransportHeaders.cs
- LinkButton.cs
- TableCell.cs
- CharEnumerator.cs
- SchemaManager.cs
- WebPartDisplayModeCancelEventArgs.cs
- WrapPanel.cs
- GlyphElement.cs
- Compiler.cs
- HttpRequestWrapper.cs
- DesignDataSource.cs
- StylusPointProperty.cs
- DbParameterHelper.cs
- ConfigurationStrings.cs
- ValueSerializer.cs
- MappingItemCollection.cs
- ReadOnlyDataSourceView.cs
- FrameworkElement.cs
- ObfuscationAttribute.cs
- WindowsFont.cs
- panel.cs
- Attributes.cs
- OlePropertyStructs.cs
- DocumentViewerBaseAutomationPeer.cs
- Popup.cs
- GB18030Encoding.cs
- TextPenaltyModule.cs
- CompModSwitches.cs
- PointLight.cs
- RepeatButton.cs
- NameValueConfigurationCollection.cs
- ParameterCollectionEditorForm.cs
- CounterSampleCalculator.cs
- LeaseManager.cs
- Version.cs
- RenamedEventArgs.cs
- ObfuscateAssemblyAttribute.cs
- MeasureData.cs
- InfoCardProofToken.cs
- httpstaticobjectscollection.cs
- TailPinnedEventArgs.cs
- HtmlInputPassword.cs
- UpdatePanelTrigger.cs
- XmlUtf8RawTextWriter.cs
- CursorConverter.cs
- MasterPageBuildProvider.cs
- StreamGeometryContext.cs
- Condition.cs
- BinaryMethodMessage.cs
- RepeatButton.cs
- InternalRelationshipCollection.cs
- HandledMouseEvent.cs