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
- GenericIdentity.cs
- ImportDesigner.xaml.cs
- SafeRightsManagementQueryHandle.cs
- GridViewEditEventArgs.cs
- TextTreeInsertUndoUnit.cs
- GeneralTransform2DTo3D.cs
- CodeAttributeDeclaration.cs
- XmlIgnoreAttribute.cs
- Application.cs
- OleDbPropertySetGuid.cs
- PeerCollaboration.cs
- DataMember.cs
- IndividualDeviceConfig.cs
- DataSysAttribute.cs
- CodeTryCatchFinallyStatement.cs
- AssociationSet.cs
- SqlWebEventProvider.cs
- COSERVERINFO.cs
- AuthenticationException.cs
- InternalResources.cs
- CaseInsensitiveComparer.cs
- Point3DCollection.cs
- Site.cs
- HotSpot.cs
- xmlsaver.cs
- SelectionWordBreaker.cs
- LocalizedNameDescriptionPair.cs
- OperationParameterInfo.cs
- XamlWriter.cs
- URLMembershipCondition.cs
- ColumnResult.cs
- PieceDirectory.cs
- GeometryGroup.cs
- GridViewDeletedEventArgs.cs
- EllipseGeometry.cs
- ThreadInterruptedException.cs
- OutputCacheModule.cs
- RecordManager.cs
- OleDbParameterCollection.cs
- DbConnectionPoolGroupProviderInfo.cs
- BinHexDecoder.cs
- UIServiceHelper.cs
- SqlNotificationEventArgs.cs
- StateMachineExecutionState.cs
- XmlSerializableServices.cs
- EventHandlerList.cs
- FaultPropagationRecord.cs
- PageStatePersister.cs
- Utilities.cs
- ApplicationManager.cs
- HwndHostAutomationPeer.cs
- OdbcCommand.cs
- MenuCommandService.cs
- ContentControl.cs
- _DisconnectOverlappedAsyncResult.cs
- PrivateFontCollection.cs
- PropertyChangeTracker.cs
- OpenTypeLayout.cs
- ArcSegment.cs
- Zone.cs
- GenericAuthenticationEventArgs.cs
- MethodToken.cs
- AggregateException.cs
- PtsContext.cs
- ClassHandlersStore.cs
- SymLanguageVendor.cs
- WindowsIPAddress.cs
- PackageFilter.cs
- Bind.cs
- DataGridViewTextBoxEditingControl.cs
- ListViewDeleteEventArgs.cs
- WSHttpBinding.cs
- Tile.cs
- MemberHolder.cs
- PassportAuthenticationEventArgs.cs
- PropertyEmitter.cs
- LocalizableAttribute.cs
- ZipIOExtraFieldElement.cs
- AdapterDictionary.cs
- LiteralControl.cs
- HashCodeCombiner.cs
- BigInt.cs
- NamespaceInfo.cs
- SqlRowUpdatingEvent.cs
- CodeCommentStatementCollection.cs
- DrawingServices.cs
- securitycriticaldataClass.cs
- HttpCachePolicy.cs
- BaseCollection.cs
- XPathAncestorQuery.cs
- SmtpAuthenticationManager.cs
- DBNull.cs
- KnownTypes.cs
- DataBindingExpressionBuilder.cs
- DefaultHttpHandler.cs
- WebPartMenu.cs
- Ray3DHitTestResult.cs
- UIElementParagraph.cs
- ZipIOModeEnforcingStream.cs
- DbDataSourceEnumerator.cs