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
- QueryConverter.cs
- UIElementAutomationPeer.cs
- DataServiceRequestException.cs
- MemberPath.cs
- CompressStream.cs
- TracingConnectionInitiator.cs
- PageCache.cs
- AncillaryOps.cs
- SamlSecurityTokenAuthenticator.cs
- ObjectPersistData.cs
- XmlNodeChangedEventArgs.cs
- ConfigurationProperty.cs
- SqlXmlStorage.cs
- EnumBuilder.cs
- DispatcherExceptionFilterEventArgs.cs
- NameSpaceEvent.cs
- HttpListenerRequest.cs
- FontInfo.cs
- Int32RectValueSerializer.cs
- OutOfMemoryException.cs
- PeerCollaboration.cs
- Cast.cs
- TextEditorContextMenu.cs
- TypeContext.cs
- UnionExpr.cs
- GenericIdentity.cs
- SafeRegistryHandle.cs
- Point3DValueSerializer.cs
- OleStrCAMarshaler.cs
- EventDescriptorCollection.cs
- BrowserDefinition.cs
- StringPropertyBuilder.cs
- UnionExpr.cs
- CodeGenerationManager.cs
- EventListener.cs
- AppDomainInfo.cs
- BrowserCapabilitiesFactoryBase.cs
- RuntimeHelpers.cs
- ImportContext.cs
- XamlPointCollectionSerializer.cs
- TextTreeText.cs
- EntityDescriptor.cs
- SettingsProviderCollection.cs
- exports.cs
- XmlSchemaElement.cs
- CheckBox.cs
- ScriptingProfileServiceSection.cs
- ConfigurationValidatorBase.cs
- WmlPageAdapter.cs
- TaskFormBase.cs
- TypeBuilderInstantiation.cs
- UserControl.cs
- System.Data_BID.cs
- FileLoadException.cs
- FixedHighlight.cs
- ColorInterpolationModeValidation.cs
- ObjectTag.cs
- PixelShader.cs
- PrtCap_Base.cs
- Brushes.cs
- InternalException.cs
- MDIWindowDialog.cs
- FontSizeConverter.cs
- Selection.cs
- DataViewManager.cs
- ChangeDirector.cs
- HMAC.cs
- ModelItemExtensions.cs
- WindowsScrollBarBits.cs
- ValidationPropertyAttribute.cs
- DrawListViewColumnHeaderEventArgs.cs
- DesignerProperties.cs
- XslAst.cs
- CodeEntryPointMethod.cs
- LZCodec.cs
- SqlDataSourceDesigner.cs
- SqlFunctionAttribute.cs
- EntityDescriptor.cs
- SoapMessage.cs
- MailWriter.cs
- CqlGenerator.cs
- StylusDevice.cs
- ComponentResourceManager.cs
- HelpInfo.cs
- TraceContextEventArgs.cs
- MobileControlBuilder.cs
- ImpersonateTokenRef.cs
- TrueReadOnlyCollection.cs
- FixedSOMPageConstructor.cs
- CompiledQueryCacheKey.cs
- UIElementPropertyUndoUnit.cs
- TypeDescriptionProvider.cs
- XmlTextAttribute.cs
- AnnotationAdorner.cs
- OracleConnectionFactory.cs
- ListMarkerSourceInfo.cs
- EdmItemCollection.cs
- GenericIdentity.cs
- LinkConverter.cs
- User.cs