Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- InputScope.cs
- TreeNodeStyle.cs
- Model3D.cs
- RoleService.cs
- EnvelopedSignatureTransform.cs
- WebGetAttribute.cs
- TimeSpanValidator.cs
- securitycriticaldata.cs
- GridSplitter.cs
- BoundPropertyEntry.cs
- CmsInterop.cs
- OciHandle.cs
- RelatedView.cs
- CustomErrorCollection.cs
- ConnectionConsumerAttribute.cs
- OutputCacheSettings.cs
- SortDescriptionCollection.cs
- followingquery.cs
- EnumBuilder.cs
- XmlSerializerVersionAttribute.cs
- LicenseManager.cs
- ToolStripDropDownDesigner.cs
- StatusStrip.cs
- MultipartIdentifier.cs
- SerialPinChanges.cs
- CompositeActivityMarkupSerializer.cs
- SHA512.cs
- OrElse.cs
- OracleConnection.cs
- OutOfMemoryException.cs
- NetStream.cs
- MarkupObject.cs
- CustomPopupPlacement.cs
- DrawingContextWalker.cs
- ColorAnimationBase.cs
- ResourceProviderFactory.cs
- SynchronizingStream.cs
- XamlVector3DCollectionSerializer.cs
- InsufficientExecutionStackException.cs
- CommonObjectSecurity.cs
- HwndHostAutomationPeer.cs
- DesignTimeDataBinding.cs
- TextTreeNode.cs
- SQLConvert.cs
- _Rfc2616CacheValidators.cs
- StatusBarDesigner.cs
- SQLBinaryStorage.cs
- XmlSchemaSimpleTypeList.cs
- ErrorFormatter.cs
- BinaryParser.cs
- PolicyStatement.cs
- SQLBinaryStorage.cs
- PathGradientBrush.cs
- AuthenticationServiceManager.cs
- StrokeNodeOperations.cs
- Token.cs
- RootNamespaceAttribute.cs
- AccessKeyManager.cs
- ToolStripOverflowButton.cs
- ByteConverter.cs
- DBSqlParserColumn.cs
- userdatakeys.cs
- DataGridBoolColumn.cs
- CollectionContainer.cs
- InlineUIContainer.cs
- BaseComponentEditor.cs
- manifestimages.cs
- TextUtf8RawTextWriter.cs
- DataServiceQueryException.cs
- SecurityHelper.cs
- SettingsAttributeDictionary.cs
- XPathPatternBuilder.cs
- RoleServiceManager.cs
- NonSerializedAttribute.cs
- FlowDocumentPageViewerAutomationPeer.cs
- RegexTree.cs
- StringWriter.cs
- DataRow.cs
- MethodCallConverter.cs
- TimeManager.cs
- ObjectItemLoadingSessionData.cs
- ToolStripSettings.cs
- ObjectHandle.cs
- Compiler.cs
- FixedTextSelectionProcessor.cs
- TypeInitializationException.cs
- URIFormatException.cs
- Schedule.cs
- AlignmentYValidation.cs
- DataGridViewCellMouseEventArgs.cs
- CompiledRegexRunnerFactory.cs
- StreamReader.cs
- WebAdminConfigurationHelper.cs
- SqlAliaser.cs
- ProfessionalColorTable.cs
- ChangePassword.cs
- RuntimeConfig.cs
- SafeCryptoHandles.cs
- XmlDigitalSignatureProcessor.cs
- MouseGesture.cs