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
- SqlCommandBuilder.cs
- EncoderFallback.cs
- WorkflowDesignerMessageFilter.cs
- UTF8Encoding.cs
- HttpCookie.cs
- MeasurementDCInfo.cs
- XsltFunctions.cs
- StorageModelBuildProvider.cs
- IntSecurity.cs
- EventLogPermissionAttribute.cs
- PointKeyFrameCollection.cs
- WinEventHandler.cs
- SqlExpander.cs
- EntityWithChangeTrackerStrategy.cs
- Asn1Utilities.cs
- Typeface.cs
- TraceListeners.cs
- Pen.cs
- TemplateInstanceAttribute.cs
- SoapSchemaMember.cs
- TableSectionStyle.cs
- DbConnectionPoolOptions.cs
- GZipObjectSerializer.cs
- ApplicationException.cs
- ImageBrush.cs
- RandomNumberGenerator.cs
- Stream.cs
- AnnotationResource.cs
- BamlMapTable.cs
- DataRow.cs
- LineSegment.cs
- TcpAppDomainProtocolHandler.cs
- RepeaterCommandEventArgs.cs
- XpsResourcePolicy.cs
- SemaphoreFullException.cs
- BamlLocalizableResourceKey.cs
- DispatcherProcessingDisabled.cs
- TraceSource.cs
- GenerateScriptTypeAttribute.cs
- BinaryNode.cs
- StringToken.cs
- ConfigurationLockCollection.cs
- BitmapPalettes.cs
- Literal.cs
- XamlWriterExtensions.cs
- Win32.cs
- DataStreamFromComStream.cs
- NonParentingControl.cs
- EntityViewGenerationAttribute.cs
- DataGridViewImageColumn.cs
- lengthconverter.cs
- DayRenderEvent.cs
- LostFocusEventManager.cs
- SettingsPropertyWrongTypeException.cs
- NameSpaceExtractor.cs
- BamlWriter.cs
- SqlConnectionManager.cs
- StreamGeometry.cs
- LoadItemsEventArgs.cs
- InlineUIContainer.cs
- DataServiceException.cs
- GlyphingCache.cs
- DataGridColumnCollection.cs
- Encoder.cs
- LineBreakRecord.cs
- GridViewPageEventArgs.cs
- Brushes.cs
- SubstitutionList.cs
- LogicalTreeHelper.cs
- DetailsViewRowCollection.cs
- XmlSchemaInfo.cs
- QueryOutputWriter.cs
- DataSourceHelper.cs
- NoPersistScope.cs
- AlternateView.cs
- ZoneIdentityPermission.cs
- WorkflowOwnershipException.cs
- DataTableMappingCollection.cs
- DateTimeOffset.cs
- ConnectionStringEditor.cs
- XamlUtilities.cs
- Monitor.cs
- SiteIdentityPermission.cs
- PreviewPageInfo.cs
- ScriptingRoleServiceSection.cs
- PersonalizationState.cs
- BindingCollection.cs
- RawStylusSystemGestureInputReport.cs
- ReadContentAsBinaryHelper.cs
- RevocationPoint.cs
- EmissiveMaterial.cs
- EventMappingSettings.cs
- DocumentGridPage.cs
- COM2Enum.cs
- DateRangeEvent.cs
- TreeChangeInfo.cs
- XmlRootAttribute.cs
- ExtenderProviderService.cs
- OdbcException.cs
- counter.cs