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
- Brush.cs
- _UriTypeConverter.cs
- PrimaryKeyTypeConverter.cs
- CodeDirectionExpression.cs
- RenderData.cs
- ClaimTypes.cs
- Border.cs
- RootAction.cs
- _DigestClient.cs
- QilValidationVisitor.cs
- OleDbCommandBuilder.cs
- Condition.cs
- TextParentUndoUnit.cs
- AddressingProperty.cs
- _FtpControlStream.cs
- NamespaceQuery.cs
- RelationshipEndMember.cs
- localization.cs
- LinkDesigner.cs
- AssociationSetMetadata.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- ForeignKeyConstraint.cs
- LongCountAggregationOperator.cs
- ObfuscateAssemblyAttribute.cs
- Identity.cs
- SafeViewOfFileHandle.cs
- OleDbError.cs
- ApplicationDirectory.cs
- Style.cs
- AuthorizationRule.cs
- WindowsListBox.cs
- ResXResourceSet.cs
- BindingSource.cs
- DispatcherExceptionFilterEventArgs.cs
- TextElementCollectionHelper.cs
- CodeAttachEventStatement.cs
- HTMLTextWriter.cs
- TextControl.cs
- Frame.cs
- URIFormatException.cs
- DataGridHyperlinkColumn.cs
- Convert.cs
- CodeGroup.cs
- CapabilitiesPattern.cs
- OdbcDataAdapter.cs
- Pens.cs
- TextInfo.cs
- DataGridViewCellStyleChangedEventArgs.cs
- GestureRecognizer.cs
- SpoolingTask.cs
- ReflectPropertyDescriptor.cs
- MenuItemStyle.cs
- AttributeInfo.cs
- AttachedPropertyInfo.cs
- PropertyPushdownHelper.cs
- SafeRightsManagementHandle.cs
- EncodingNLS.cs
- DispatcherExceptionFilterEventArgs.cs
- ProfileGroupSettings.cs
- _IPv4Address.cs
- CTreeGenerator.cs
- XmlNamespaceMapping.cs
- DataBinder.cs
- designeractionlistschangedeventargs.cs
- ScaleTransform.cs
- XmlReflectionMember.cs
- XmlSchemaSimpleContent.cs
- StylusButton.cs
- LayoutManager.cs
- ColumnHeader.cs
- HtmlForm.cs
- Span.cs
- InnerItemCollectionView.cs
- CreateUserErrorEventArgs.cs
- RepeatEnumerable.cs
- DataMemberConverter.cs
- InternalRelationshipCollection.cs
- TypefaceMetricsCache.cs
- CompiledAction.cs
- CompleteWizardStep.cs
- PathSegment.cs
- WebControlsSection.cs
- UserNameSecurityToken.cs
- XmlDataProvider.cs
- OdbcParameter.cs
- TargetParameterCountException.cs
- IImplicitResourceProvider.cs
- ObjectIDGenerator.cs
- RegisteredExpandoAttribute.cs
- PathTooLongException.cs
- CursorConverter.cs
- OlePropertyStructs.cs
- IODescriptionAttribute.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- ParameterEditorUserControl.cs
- SecurityDocument.cs
- EncryptedData.cs
- ProjectionNode.cs
- ToolStripSeparator.cs
- DataControlFieldCell.cs