Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / ArgumentOutOfRangeException.cs / 1305376 / 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; using System.Diagnostics.Contracts; // 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 { #if !FEATURE_SPLIT_RESOURCES private static String _rangeMessage; #endif private Object m_actualValue; private static String RangeMessage { get { #if FEATURE_SPLIT_RESOURCES return Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); #else if (_rangeMessage == null) _rangeMessage = Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); return _rangeMessage; #endif } } // 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 = Environment.GetRuntimeResourceString("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; } } [System.Security.SecurityCritical] // auto-generated_required public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info==null) { throw new ArgumentNullException("info"); } Contract.EndContractBlock(); base.GetObjectData(info, context); info.AddValue("ActualValue", m_actualValue, typeof(Object)); } [System.Security.SecuritySafeCritical] // auto-generated 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
- Encoding.cs
- HttpInputStream.cs
- InternalBase.cs
- TextLineBreak.cs
- OleDbConnectionFactory.cs
- ExpandCollapsePattern.cs
- MemoryStream.cs
- _CookieModule.cs
- DesignerAutoFormat.cs
- RemoteWebConfigurationHostStream.cs
- SqlStatistics.cs
- DateTimeFormat.cs
- MsmqHostedTransportConfiguration.cs
- StrongNameHelpers.cs
- ImageSource.cs
- Int32RectConverter.cs
- PlainXmlDeserializer.cs
- UriParserTemplates.cs
- SQLInt64Storage.cs
- Invariant.cs
- StrongNameMembershipCondition.cs
- ExceptionUtil.cs
- FixedDocumentPaginator.cs
- CursorInteropHelper.cs
- ETagAttribute.cs
- AsymmetricKeyExchangeDeformatter.cs
- LockedAssemblyCache.cs
- ContextMenuAutomationPeer.cs
- MenuAutoFormat.cs
- FontNamesConverter.cs
- SHA1CryptoServiceProvider.cs
- DataGridItemEventArgs.cs
- ClientRoleProvider.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- ColorDialog.cs
- DockPanel.cs
- CryptoConfig.cs
- EntityDataSourceViewSchema.cs
- UnaryNode.cs
- CmsInterop.cs
- DrawingGroup.cs
- RangeValueProviderWrapper.cs
- ZoneMembershipCondition.cs
- SourceLineInfo.cs
- IdentitySection.cs
- ReadWriteSpinLock.cs
- RtfToXamlReader.cs
- PopupEventArgs.cs
- AliasGenerator.cs
- ReachUIElementCollectionSerializer.cs
- RenderDataDrawingContext.cs
- AutoFocusStyle.xaml.cs
- ComponentCache.cs
- ErrorEventArgs.cs
- DirectoryGroupQuery.cs
- ExpiredSecurityTokenException.cs
- RowTypePropertyElement.cs
- GenericEnumConverter.cs
- DesignerVerb.cs
- OperationCanceledException.cs
- TextElementCollectionHelper.cs
- XpsViewerException.cs
- EmptyEnumerator.cs
- _ListenerRequestStream.cs
- CompensationHandlingFilter.cs
- ParameterCollection.cs
- COM2PictureConverter.cs
- OdbcConnectionFactory.cs
- FontUnit.cs
- StandardMenuStripVerb.cs
- IndicCharClassifier.cs
- SoundPlayerAction.cs
- Point3DAnimation.cs
- BaseTemplateParser.cs
- Schema.cs
- _CookieModule.cs
- TabPage.cs
- WindowsFormsHostAutomationPeer.cs
- ToolBarButtonClickEvent.cs
- ReadWriteObjectLock.cs
- ApplicationServiceManager.cs
- GuidelineSet.cs
- MetadataAssemblyHelper.cs
- HandleCollector.cs
- Selection.cs
- PropertyGrid.cs
- WebPartZoneCollection.cs
- SqlClientWrapperSmiStream.cs
- MailFileEditor.cs
- ReflectionPermission.cs
- ByeMessageCD1.cs
- SessionStateSection.cs
- StrongBox.cs
- Run.cs
- InkPresenter.cs
- ComponentResourceKey.cs
- StylusCaptureWithinProperty.cs
- ILGenerator.cs
- WindowsFormsHostAutomationPeer.cs
- newinstructionaction.cs