Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / Mail / SmtpException.cs / 1 / SmtpException.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Mail { using System; using System.Runtime.Serialization; using System.Security.Permissions; [Serializable] public class SmtpException : Exception, ISerializable { SmtpStatusCode statusCode = SmtpStatusCode.GeneralFailure; static string GetMessageForStatus(SmtpStatusCode statusCode, string serverResponse) { return GetMessageForStatus(statusCode)+" "+SR.GetString(SR.MailServerResponse,serverResponse); } static string GetMessageForStatus(SmtpStatusCode statusCode) { switch (statusCode) { default : case SmtpStatusCode.CommandUnrecognized: return SR.GetString(SR.SmtpCommandUnrecognized); case SmtpStatusCode.SyntaxError: return SR.GetString(SR.SmtpSyntaxError); case SmtpStatusCode.CommandNotImplemented: return SR.GetString(SR.SmtpCommandNotImplemented); case SmtpStatusCode.BadCommandSequence: return SR.GetString(SR.SmtpBadCommandSequence); case SmtpStatusCode.CommandParameterNotImplemented: return SR.GetString(SR.SmtpCommandParameterNotImplemented); case SmtpStatusCode.SystemStatus: return SR.GetString(SR.SmtpSystemStatus); case SmtpStatusCode.HelpMessage: return SR.GetString(SR.SmtpHelpMessage); case SmtpStatusCode.ServiceReady: return SR.GetString(SR.SmtpServiceReady); case SmtpStatusCode.ServiceClosingTransmissionChannel: return SR.GetString(SR.SmtpServiceClosingTransmissionChannel); case SmtpStatusCode.ServiceNotAvailable: return SR.GetString(SR.SmtpServiceNotAvailable); case SmtpStatusCode.Ok: return SR.GetString(SR.SmtpOK); case SmtpStatusCode.UserNotLocalWillForward: return SR.GetString(SR.SmtpUserNotLocalWillForward); case SmtpStatusCode.MailboxBusy: return SR.GetString(SR.SmtpMailboxBusy); case SmtpStatusCode.MailboxUnavailable: return SR.GetString(SR.SmtpMailboxUnavailable); case SmtpStatusCode.LocalErrorInProcessing: return SR.GetString(SR.SmtpLocalErrorInProcessing); case SmtpStatusCode.UserNotLocalTryAlternatePath: return SR.GetString(SR.SmtpUserNotLocalTryAlternatePath); case SmtpStatusCode.InsufficientStorage: return SR.GetString(SR.SmtpInsufficientStorage); case SmtpStatusCode.ExceededStorageAllocation: return SR.GetString(SR.SmtpExceededStorageAllocation); case SmtpStatusCode.MailboxNameNotAllowed: return SR.GetString(SR.SmtpMailboxNameNotAllowed); case SmtpStatusCode.StartMailInput: return SR.GetString(SR.SmtpStartMailInput); case SmtpStatusCode.TransactionFailed: return SR.GetString(SR.SmtpTransactionFailed); case SmtpStatusCode.ClientNotPermitted: return SR.GetString(SR.SmtpClientNotPermitted); case SmtpStatusCode.MustIssueStartTlsFirst: return SR.GetString(SR.SmtpMustIssueStartTlsFirst); } } public SmtpException(SmtpStatusCode statusCode) : base(GetMessageForStatus(statusCode)) { this.statusCode = statusCode; } public SmtpException(SmtpStatusCode statusCode, string message) : base(message) { this.statusCode = statusCode; } public SmtpException() : this(SmtpStatusCode.GeneralFailure) { } public SmtpException(string message) : base(message) { } public SmtpException(string message, Exception innerException) : base(message, innerException) { } protected SmtpException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base (serializationInfo, streamingContext) { statusCode = (SmtpStatusCode)serializationInfo.GetInt32("Status"); } internal SmtpException(SmtpStatusCode statusCode, string serverMessage, bool serverResponse) : base(GetMessageForStatus(statusCode,serverMessage)) { this.statusCode = statusCode; } internal SmtpException(string message, string serverResponse) : base(message+" "+SR.GetString(SR.MailServerResponse,serverResponse)) { } ///[SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] void ISerializable.GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext) { GetObjectData(serializationInfo, streamingContext); } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo serializationInfo, StreamingContext streamingContext){ base.GetObjectData(serializationInfo, streamingContext); serializationInfo.AddValue("Status", (int)statusCode, typeof(int)); } public SmtpStatusCode StatusCode { get { return this.statusCode; } set { statusCode = value; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TrackingMemoryStream.cs
- HorizontalAlignConverter.cs
- SchemaMapping.cs
- GlyphInfoList.cs
- Stylus.cs
- GiveFeedbackEvent.cs
- SqlDataSourceStatusEventArgs.cs
- ThicknessKeyFrameCollection.cs
- ExtendedPropertyDescriptor.cs
- OdbcParameterCollection.cs
- ErrorFormatterPage.cs
- QilBinary.cs
- TextRunTypographyProperties.cs
- XPathPatternParser.cs
- EdmTypeAttribute.cs
- ReservationCollection.cs
- InkPresenter.cs
- EventLogQuery.cs
- ClientTarget.cs
- TargetControlTypeAttribute.cs
- HideDisabledControlAdapter.cs
- XmlTextReader.cs
- GroupByQueryOperator.cs
- PropertyTabChangedEvent.cs
- WrappedDispatcherException.cs
- JsonReader.cs
- AttributeData.cs
- CultureInfo.cs
- Sql8ConformanceChecker.cs
- Rule.cs
- CSharpCodeProvider.cs
- RefreshEventArgs.cs
- ZipIOExtraFieldZip64Element.cs
- ServicePointManagerElement.cs
- ControlPager.cs
- XmlUtil.cs
- SQlBooleanStorage.cs
- SoapFormatter.cs
- HtmlObjectListAdapter.cs
- SecurityTokenAuthenticator.cs
- commandenforcer.cs
- QilGeneratorEnv.cs
- SocketAddress.cs
- InternalConfigHost.cs
- EventDescriptorCollection.cs
- AnnotationService.cs
- PngBitmapEncoder.cs
- Baml2006KnownTypes.cs
- GridViewEditEventArgs.cs
- BaseUriHelper.cs
- PointUtil.cs
- SQLSingleStorage.cs
- StorageEntityContainerMapping.cs
- DynamicPropertyReader.cs
- XmlCDATASection.cs
- DrawingGroupDrawingContext.cs
- RightsManagementEncryptedStream.cs
- CollectionConverter.cs
- QilName.cs
- XmlLanguageConverter.cs
- DbProviderFactory.cs
- SubstitutionList.cs
- SqlProviderServices.cs
- IssuedTokenParametersEndpointAddressElement.cs
- SelectedDatesCollection.cs
- Errors.cs
- WebPartsPersonalization.cs
- StateItem.cs
- XD.cs
- StringExpressionSet.cs
- TrackingProfileSerializer.cs
- ToolStripStatusLabel.cs
- PropertyStore.cs
- UrlPath.cs
- FileInfo.cs
- NavigationService.cs
- RadioButtonFlatAdapter.cs
- ToolStripLocationCancelEventArgs.cs
- CaseInsensitiveHashCodeProvider.cs
- DocumentViewerBaseAutomationPeer.cs
- MailMessageEventArgs.cs
- BCLDebug.cs
- XpsS0ValidatingLoader.cs
- XmlStreamStore.cs
- ChangeBlockUndoRecord.cs
- FileSystemInfo.cs
- FastEncoderWindow.cs
- DataReceivedEventArgs.cs
- XmlWrappingWriter.cs
- WindowsMenu.cs
- DetailsViewUpdateEventArgs.cs
- FilterEventArgs.cs
- Stackframe.cs
- RootBuilder.cs
- MenuTracker.cs
- TraceLevelStore.cs
- ClaimComparer.cs
- TextureBrush.cs
- SettingsContext.cs
- CqlGenerator.cs