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
- AuthStoreRoleProvider.cs
- FunctionNode.cs
- MDIWindowDialog.cs
- Bold.cs
- InternalConfigHost.cs
- SQLChars.cs
- OutputCacheSettings.cs
- MouseDevice.cs
- GreenMethods.cs
- RawTextInputReport.cs
- ConfigXmlSignificantWhitespace.cs
- TemplateControlBuildProvider.cs
- ConnectionStringSettingsCollection.cs
- RowTypeElement.cs
- bidPrivateBase.cs
- SchemaNotation.cs
- CompilerErrorCollection.cs
- ResourceExpressionBuilder.cs
- BidirectionalDictionary.cs
- VoiceInfo.cs
- PropertyGeneratedEventArgs.cs
- _LoggingObject.cs
- NativeWrapper.cs
- ItemContainerProviderWrapper.cs
- TemplateBindingExtensionConverter.cs
- UpdateCommand.cs
- Wizard.cs
- DurationConverter.cs
- WriteTimeStream.cs
- TrackingProfileManager.cs
- DataGridColumnFloatingHeader.cs
- _ScatterGatherBuffers.cs
- JsonFormatReaderGenerator.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- WindowsGraphicsWrapper.cs
- ICspAsymmetricAlgorithm.cs
- HandlerMappingMemo.cs
- WebPartZoneCollection.cs
- GACMembershipCondition.cs
- PhysicalOps.cs
- AccessibleObject.cs
- ConfigurationStrings.cs
- cookiecollection.cs
- DesigntimeLicenseContextSerializer.cs
- Animatable.cs
- Propagator.cs
- DataView.cs
- storagemappingitemcollection.viewdictionary.cs
- SharedUtils.cs
- WindowsSpinner.cs
- ValidationPropertyAttribute.cs
- DocumentViewerBase.cs
- Group.cs
- FrameworkContentElement.cs
- Thread.cs
- EntityKey.cs
- RowToParametersTransformer.cs
- ConnectionManagementSection.cs
- ObjectConverter.cs
- ClientFormsAuthenticationMembershipProvider.cs
- Scene3D.cs
- Cursor.cs
- ApplicationHost.cs
- TextTreeDeleteContentUndoUnit.cs
- DoubleLinkList.cs
- FontWeightConverter.cs
- AutoFocusStyle.xaml.cs
- ClientRuntimeConfig.cs
- IndependentlyAnimatedPropertyMetadata.cs
- DefaultProxySection.cs
- FormsAuthenticationCredentials.cs
- DateTimeOffsetConverter.cs
- OrderPreservingSpoolingTask.cs
- CategoriesDocument.cs
- GlyphCache.cs
- SecurityRuntime.cs
- CompatibleComparer.cs
- DataGridColumnDropSeparator.cs
- DrawingBrush.cs
- StorageInfo.cs
- glyphs.cs
- OrderedDictionaryStateHelper.cs
- Convert.cs
- HttpListenerException.cs
- DependencyPropertyKey.cs
- UnauthorizedAccessException.cs
- WebPartDisplayMode.cs
- ItemsPresenter.cs
- ZipIOExtraFieldZip64Element.cs
- DrawingAttributes.cs
- NetMsmqSecurityMode.cs
- MostlySingletonList.cs
- AssemblyAssociatedContentFileAttribute.cs
- NotificationContext.cs
- VirtualDirectoryMapping.cs
- ColorInterpolationModeValidation.cs
- PageVisual.cs
- TriState.cs
- ApplicationProxyInternal.cs
- ScriptHandlerFactory.cs