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
- EventProxy.cs
- ThreadSafeList.cs
- ProfileInfo.cs
- Stack.cs
- FixedHyperLink.cs
- CachedCompositeFamily.cs
- Ticks.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- UnionCodeGroup.cs
- ApplicationManager.cs
- OperationInvokerBehavior.cs
- WebPartDisplayModeCollection.cs
- XmlHelper.cs
- ListViewGroup.cs
- WebUtil.cs
- UpdateException.cs
- UpDownBase.cs
- DefaultBindingPropertyAttribute.cs
- CodeEntryPointMethod.cs
- SqlCacheDependencyDatabase.cs
- IdentityReference.cs
- AsymmetricKeyExchangeDeformatter.cs
- InstanceData.cs
- TextCollapsingProperties.cs
- ComponentDesigner.cs
- ToolStripItemRenderEventArgs.cs
- ObjectSet.cs
- GridViewAutomationPeer.cs
- GraphicsContext.cs
- BindingSourceDesigner.cs
- PrinterResolution.cs
- Application.cs
- XmlSchemaElement.cs
- CheckBoxAutomationPeer.cs
- BatchStream.cs
- PersonalizationStateInfo.cs
- ConstructorBuilder.cs
- HoistedLocals.cs
- EDesignUtil.cs
- ConvertEvent.cs
- FunctionQuery.cs
- Types.cs
- CultureTableRecord.cs
- DataGridViewTextBoxCell.cs
- FixedSOMPage.cs
- MeasureItemEvent.cs
- TimerElapsedEvenArgs.cs
- EditorResources.cs
- ArrayListCollectionBase.cs
- ListSortDescription.cs
- WebPartChrome.cs
- DataGridViewDataErrorEventArgs.cs
- PerformanceCounterLib.cs
- XsdDataContractExporter.cs
- GraphicsContainer.cs
- MessageDesigner.cs
- SuppressMergeCheckAttribute.cs
- ModuleBuilder.cs
- AuthenticationServiceManager.cs
- RadioButton.cs
- WebPartConnectionsConfigureVerb.cs
- FixedPageStructure.cs
- ArgumentException.cs
- DecoderExceptionFallback.cs
- FileLogRecordEnumerator.cs
- HtmlControlAdapter.cs
- ReadOnlyObservableCollection.cs
- SecurityRuntime.cs
- TypographyProperties.cs
- BrushConverter.cs
- RowsCopiedEventArgs.cs
- DispatcherOperation.cs
- HorizontalAlignConverter.cs
- TypeSystem.cs
- TrackBar.cs
- EllipseGeometry.cs
- FileAccessException.cs
- DeploymentSection.cs
- CorrelationManager.cs
- ConstraintStruct.cs
- UndoEngine.cs
- OdbcConnectionHandle.cs
- StringToken.cs
- StringComparer.cs
- SimpleMailWebEventProvider.cs
- EventHandlersStore.cs
- CheckBox.cs
- InvalidCommandTreeException.cs
- PriorityRange.cs
- PointAnimation.cs
- GenericEnumConverter.cs
- KeyPressEvent.cs
- __Filters.cs
- RowType.cs
- FixUp.cs
- Bitmap.cs
- Compilation.cs
- CryptoKeySecurity.cs
- SecurityHelper.cs
- SiteMapNode.cs