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
- bindurihelper.cs
- RsaSecurityTokenAuthenticator.cs
- RawTextInputReport.cs
- StatusBarPanelClickEvent.cs
- BindingGraph.cs
- NotSupportedException.cs
- DebugInfoGenerator.cs
- MachineKeyValidationConverter.cs
- OleDbDataReader.cs
- SoapIgnoreAttribute.cs
- BaseDataList.cs
- HTMLTagNameToTypeMapper.cs
- UrlAuthFailedErrorFormatter.cs
- AssociationSet.cs
- IIS7UserPrincipal.cs
- PropertyRef.cs
- MetaColumn.cs
- ApplicationDirectory.cs
- OptimalBreakSession.cs
- ControlBuilderAttribute.cs
- RectangleF.cs
- CodeAccessPermission.cs
- Configuration.cs
- CodeChecksumPragma.cs
- UInt64Storage.cs
- basenumberconverter.cs
- HandlerFactoryCache.cs
- WebPart.cs
- TypeFieldSchema.cs
- CaseCqlBlock.cs
- Line.cs
- SizeConverter.cs
- SerializationInfoEnumerator.cs
- ColorDialog.cs
- FixedElement.cs
- OpenTypeCommon.cs
- XmlSignatureProperties.cs
- AutomationElement.cs
- MessageQueueException.cs
- HttpCookiesSection.cs
- _ListenerAsyncResult.cs
- DataPager.cs
- MsmqMessageProperty.cs
- TextServicesCompartmentContext.cs
- SqlNamer.cs
- SQLBoolean.cs
- XamlFigureLengthSerializer.cs
- ConfigurationLocationCollection.cs
- ProfessionalColors.cs
- BackStopAuthenticationModule.cs
- MetadataCache.cs
- DataServiceHostFactory.cs
- CreateUserErrorEventArgs.cs
- OrderingInfo.cs
- UpdateTracker.cs
- Parser.cs
- IgnoreFlushAndCloseStream.cs
- EntityReference.cs
- ToolBar.cs
- SelectionItemProviderWrapper.cs
- EntityAdapter.cs
- HelpFileFileNameEditor.cs
- DocumentAutomationPeer.cs
- MethodCallExpression.cs
- DataGridCheckBoxColumn.cs
- SettingsPropertyWrongTypeException.cs
- SqlBinder.cs
- DecimalStorage.cs
- CommonBehaviorsSection.cs
- GridViewCommandEventArgs.cs
- COM2ComponentEditor.cs
- TrustSection.cs
- ScriptResourceInfo.cs
- WinEventQueueItem.cs
- FormattedTextSymbols.cs
- RecognizeCompletedEventArgs.cs
- Intellisense.cs
- BooleanSwitch.cs
- webbrowsersite.cs
- XmlNode.cs
- VisualStateGroup.cs
- SqlTrackingService.cs
- TagNameToTypeMapper.cs
- TraceSection.cs
- MatrixStack.cs
- XPathException.cs
- ObfuscateAssemblyAttribute.cs
- TextHidden.cs
- PagerSettings.cs
- ColorConvertedBitmap.cs
- FrameworkTextComposition.cs
- DataServiceQueryProvider.cs
- SoapSchemaExporter.cs
- WarningException.cs
- ProxyElement.cs
- LocatorPart.cs
- ResourceBinder.cs
- IsolatedStorage.cs
- NumberSubstitution.cs
- UnsafeNativeMethods.cs