Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- CompositeCollection.cs
- RecordManager.cs
- ColumnCollectionEditor.cs
- CellTreeNodeVisitors.cs
- PrivilegeNotHeldException.cs
- BatchWriter.cs
- ClientSideQueueItem.cs
- PrintDocument.cs
- iisPickupDirectory.cs
- PerformanceCounterCategory.cs
- DBConcurrencyException.cs
- ProgressBar.cs
- XmlRawWriterWrapper.cs
- ReadOnlyNameValueCollection.cs
- SimpleExpression.cs
- ReadOnlyDictionary.cs
- PrintPageEvent.cs
- EventLogPermissionEntryCollection.cs
- ToolStripDropDownMenu.cs
- FolderNameEditor.cs
- FlowDocumentScrollViewer.cs
- PagerSettings.cs
- DataSourceSelectArguments.cs
- ObjectRef.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- ObjectTypeMapping.cs
- ManagedFilter.cs
- AmbientProperties.cs
- Identifier.cs
- RuleProcessor.cs
- BufferedGraphicsContext.cs
- SpellerHighlightLayer.cs
- RSAPKCS1SignatureDeformatter.cs
- ClientTargetCollection.cs
- CodeRemoveEventStatement.cs
- ToolStripPanelCell.cs
- TextFormattingConverter.cs
- EntityStoreSchemaGenerator.cs
- SynchronizationHandlesCodeDomSerializer.cs
- AvTraceDetails.cs
- TypeLoadException.cs
- PhysicalAddress.cs
- SafeWaitHandle.cs
- StylusDevice.cs
- DataGridViewImageCell.cs
- Constraint.cs
- WindowsUpDown.cs
- ProfileManager.cs
- UnknownBitmapDecoder.cs
- LambdaCompiler.ControlFlow.cs
- ByteKeyFrameCollection.cs
- AmbiguousMatchException.cs
- ISAPIApplicationHost.cs
- UInt32.cs
- MembershipUser.cs
- QuinticEase.cs
- MenuItem.cs
- HyperLinkColumn.cs
- NonParentingControl.cs
- SerialPinChanges.cs
- DataGridViewSelectedRowCollection.cs
- XmlConvert.cs
- ToolStripDropDown.cs
- EntityDescriptor.cs
- TableParaClient.cs
- ZipIOLocalFileDataDescriptor.cs
- PerformanceCounterManager.cs
- ModelPerspective.cs
- RightsManagementEncryptedStream.cs
- xmlfixedPageInfo.cs
- MdiWindowListItemConverter.cs
- AnnotationMap.cs
- Overlapped.cs
- LockedBorderGlyph.cs
- DataGridViewColumnEventArgs.cs
- SessionEndingCancelEventArgs.cs
- SecurityPermission.cs
- BitmapScalingModeValidation.cs
- ElementsClipboardData.cs
- MD5.cs
- _HelperAsyncResults.cs
- ResourceSetExpression.cs
- StyleCollectionEditor.cs
- VirtualPathExtension.cs
- XmlSchemaSubstitutionGroup.cs
- UrlMappingsSection.cs
- CellTreeNode.cs
- VerticalAlignConverter.cs
- ConversionHelper.cs
- SQLBinaryStorage.cs
- DigestTraceRecordHelper.cs
- M3DUtil.cs
- FixUpCollection.cs
- HandlerBase.cs
- PrintDialogException.cs
- WindowsAltTab.cs
- _IPv6Address.cs
- HandoffBehavior.cs
- XamlVector3DCollectionSerializer.cs
- SqlNotificationEventArgs.cs