Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / ArgumentOutOfRangeException.cs / 1 / ArgumentOutOfRangeException.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: ArgumentOutOfRangeException ** ** ** Purpose: Exception class for method arguments outside of the legal range. ** ** =============================================================================*/ namespace System { using System; using System.Runtime.Remoting; using System.Runtime.Serialization; using System.Globalization; using System.Security.Permissions; // The ArgumentOutOfRangeException is thrown when an argument // is outside the legal range for that argument. [System.Runtime.InteropServices.ComVisible(true)] [Serializable()] public class ArgumentOutOfRangeException : ArgumentException, ISerializable { private static String _rangeMessage; private Object m_actualValue; private static String RangeMessage { get { if (_rangeMessage == null) _rangeMessage = Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); return _rangeMessage; } } // Creates a new ArgumentOutOfRangeException with its message // string set to a default message explaining an argument was out of range. public ArgumentOutOfRangeException() : base(RangeMessage) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String paramName) : base(RangeMessage, paramName) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String paramName, String message) : base(message, paramName) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String message, Exception innerException) : base(message, innerException) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } // We will not use this in the classlibs, but we'll provide it for // anyone that's really interested so they don't have to stick a bunch // of printf's in their code. public ArgumentOutOfRangeException(String paramName, Object actualValue, String message) : base(message, paramName) { m_actualValue = actualValue; SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public override String Message { get { String s = base.Message; if (m_actualValue != null) { String valueMessage = String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("ArgumentOutOfRange_ActualValue"), m_actualValue.ToString()); if (s == null) return valueMessage; return s + Environment.NewLine + valueMessage; } return s; } } // Gets the value of the argument that caused the exception. // Note - we don't set this anywhere in the class libraries in // version 1, but it might come in handy for other developers who // want to avoid sticking printf's in their code. public virtual Object ActualValue { get { return m_actualValue; } } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info==null) { throw new ArgumentNullException("info"); } base.GetObjectData(info, context); info.AddValue("ActualValue", m_actualValue, typeof(Object)); } protected ArgumentOutOfRangeException(SerializationInfo info, StreamingContext context) : base(info, context) { m_actualValue = info.GetValue("ActualValue", typeof(Object)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: ArgumentOutOfRangeException ** ** ** Purpose: Exception class for method arguments outside of the legal range. ** ** =============================================================================*/ namespace System { using System; using System.Runtime.Remoting; using System.Runtime.Serialization; using System.Globalization; using System.Security.Permissions; // The ArgumentOutOfRangeException is thrown when an argument // is outside the legal range for that argument. [System.Runtime.InteropServices.ComVisible(true)] [Serializable()] public class ArgumentOutOfRangeException : ArgumentException, ISerializable { private static String _rangeMessage; private Object m_actualValue; private static String RangeMessage { get { if (_rangeMessage == null) _rangeMessage = Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); return _rangeMessage; } } // Creates a new ArgumentOutOfRangeException with its message // string set to a default message explaining an argument was out of range. public ArgumentOutOfRangeException() : base(RangeMessage) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String paramName) : base(RangeMessage, paramName) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String paramName, String message) : base(message, paramName) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public ArgumentOutOfRangeException(String message, Exception innerException) : base(message, innerException) { SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } // We will not use this in the classlibs, but we'll provide it for // anyone that's really interested so they don't have to stick a bunch // of printf's in their code. public ArgumentOutOfRangeException(String paramName, Object actualValue, String message) : base(message, paramName) { m_actualValue = actualValue; SetErrorCode(__HResults.COR_E_ARGUMENTOUTOFRANGE); } public override String Message { get { String s = base.Message; if (m_actualValue != null) { String valueMessage = String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("ArgumentOutOfRange_ActualValue"), m_actualValue.ToString()); if (s == null) return valueMessage; return s + Environment.NewLine + valueMessage; } return s; } } // Gets the value of the argument that caused the exception. // Note - we don't set this anywhere in the class libraries in // version 1, but it might come in handy for other developers who // want to avoid sticking printf's in their code. public virtual Object ActualValue { get { return m_actualValue; } } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info==null) { throw new ArgumentNullException("info"); } base.GetObjectData(info, context); info.AddValue("ActualValue", m_actualValue, typeof(Object)); } protected ArgumentOutOfRangeException(SerializationInfo info, StreamingContext context) : base(info, context) { m_actualValue = info.GetValue("ActualValue", typeof(Object)); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FontFamily.cs
- ObjectStateFormatter.cs
- VScrollProperties.cs
- UnsafeNativeMethodsPenimc.cs
- CodeAttributeArgumentCollection.cs
- Literal.cs
- BasicExpandProvider.cs
- HtmlInputControl.cs
- ListViewGroupItemCollection.cs
- ConstructorBuilder.cs
- MsmqIntegrationChannelListener.cs
- AnnotationMap.cs
- LocalServiceSecuritySettingsElement.cs
- DesignTimeVisibleAttribute.cs
- PeerNameRecord.cs
- TreeIterator.cs
- formatter.cs
- CommonEndpointBehaviorElement.cs
- ScriptingWebServicesSectionGroup.cs
- MetadataStore.cs
- XmlDataSourceNodeDescriptor.cs
- DataBoundLiteralControl.cs
- KeyGestureConverter.cs
- ImportContext.cs
- MsmqPoisonMessageException.cs
- SqlNodeAnnotations.cs
- IProducerConsumerCollection.cs
- ProfileGroupSettings.cs
- ReliabilityContractAttribute.cs
- StringWriter.cs
- DbParameterHelper.cs
- WindowsPen.cs
- ToolStripDesignerAvailabilityAttribute.cs
- _ConnectStream.cs
- VarRefManager.cs
- SystemKeyConverter.cs
- ModelEditingScope.cs
- ParserStack.cs
- FileDataSourceCache.cs
- SortKey.cs
- ButtonColumn.cs
- TreeNode.cs
- SynchronizedDispatch.cs
- LineSegment.cs
- ExternalCalls.cs
- BitmapEffectDrawingContextWalker.cs
- DataColumnCollection.cs
- TypographyProperties.cs
- ReferenceConverter.cs
- HitTestWithPointDrawingContextWalker.cs
- DBCommandBuilder.cs
- DataSourceSelectArguments.cs
- SQLSingle.cs
- BaseTemplateParser.cs
- AnimationClock.cs
- SmiContext.cs
- CharUnicodeInfo.cs
- CheckBoxBaseAdapter.cs
- Permission.cs
- TypeHelpers.cs
- RC2CryptoServiceProvider.cs
- SplineKeyFrames.cs
- milexports.cs
- XmlDataContract.cs
- HttpPostLocalhostServerProtocol.cs
- diagnosticsswitches.cs
- DesignerResources.cs
- ByteStreamGeometryContext.cs
- AttachedPropertyMethodSelector.cs
- RedirectionProxy.cs
- ProviderConnectionPoint.cs
- XmlSchemaObject.cs
- QueryRewriter.cs
- AnyAllSearchOperator.cs
- EnvironmentPermission.cs
- WsdlExporter.cs
- Unit.cs
- SectionVisual.cs
- XsltSettings.cs
- ValidationHelper.cs
- SelectionRange.cs
- XmlExtensionFunction.cs
- PasswordBox.cs
- ObjectDataSourceSelectingEventArgs.cs
- Helpers.cs
- Wizard.cs
- DbParameterHelper.cs
- baseaxisquery.cs
- SynchronizedDispatch.cs
- ToolStripStatusLabel.cs
- SqlMetaData.cs
- MimeObjectFactory.cs
- ScriptingJsonSerializationSection.cs
- ContextBase.cs
- EmbeddedMailObject.cs
- XpsException.cs
- OdbcTransaction.cs
- VisualState.cs
- BordersPage.cs
- listitem.cs