Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- SignatureGenerator.cs
- TableSectionStyle.cs
- HtmlTableRow.cs
- DataPagerField.cs
- CapabilitiesState.cs
- Thumb.cs
- FontStyle.cs
- SqlPersistenceWorkflowInstanceDescription.cs
- Renderer.cs
- URLAttribute.cs
- ConfigUtil.cs
- SplayTreeNode.cs
- DateBoldEvent.cs
- GeometryModel3D.cs
- ThumbButtonInfo.cs
- FixedSOMTableRow.cs
- RowParagraph.cs
- ServiceModelReg.cs
- ReadOnlyDictionary.cs
- TransformationRules.cs
- ProtectedProviderSettings.cs
- ScriptReferenceEventArgs.cs
- FixedSchema.cs
- SystemInformation.cs
- SimpleLine.cs
- QuaternionRotation3D.cs
- FileRegion.cs
- ListViewItemSelectionChangedEvent.cs
- FrameworkTemplate.cs
- ExpressionBuilder.cs
- TextCharacters.cs
- DesignerSerializationVisibilityAttribute.cs
- CompilationSection.cs
- WeakEventManager.cs
- CompositeDuplexElement.cs
- Scene3D.cs
- PartitionResolver.cs
- ExtendedProtectionPolicyElement.cs
- AppDomainManager.cs
- Int32Converter.cs
- DefaultValueConverter.cs
- XmlSchema.cs
- PointAnimationBase.cs
- localization.cs
- MenuCommand.cs
- InteropTrackingRecord.cs
- CustomActivityDesigner.cs
- CalendarAutomationPeer.cs
- ExpressionWriter.cs
- BooleanAnimationBase.cs
- UnauthorizedWebPart.cs
- XmlLoader.cs
- WindowsTokenRoleProvider.cs
- ImageSource.cs
- EndpointBehaviorElement.cs
- FixedDocumentPaginator.cs
- ItemCollectionEditor.cs
- EdmValidator.cs
- DataColumnCollection.cs
- ViewLoader.cs
- HandlerBase.cs
- SignalGate.cs
- TileModeValidation.cs
- TimeoutValidationAttribute.cs
- ConfigurationLocationCollection.cs
- DeflateStream.cs
- Helpers.cs
- ImageSource.cs
- NativeRightsManagementAPIsStructures.cs
- SqlReorderer.cs
- MultiplexingDispatchMessageFormatter.cs
- DocumentViewer.cs
- TextBoxBase.cs
- RubberbandSelector.cs
- CodeEntryPointMethod.cs
- ListViewHitTestInfo.cs
- CssTextWriter.cs
- XmlHierarchicalEnumerable.cs
- EventProviderClassic.cs
- RangeValuePattern.cs
- XmlRawWriter.cs
- WorkflowElementDialogWindow.xaml.cs
- InstanceDataCollection.cs
- IntMinMaxAggregationOperator.cs
- StatusBarAutomationPeer.cs
- KeyedCollection.cs
- GridViewRowEventArgs.cs
- _FixedSizeReader.cs
- UpdateExpressionVisitor.cs
- Triplet.cs
- SiteMapHierarchicalDataSourceView.cs
- SourceItem.cs
- ClientOptions.cs
- SqlWorkflowInstanceStoreLock.cs
- WindowsSysHeader.cs
- IntMinMaxAggregationOperator.cs
- DrawingCollection.cs
- Wildcard.cs
- QuestionEventArgs.cs
- ChtmlPhoneCallAdapter.cs