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
- Message.cs
- CustomPeerResolverService.cs
- sortedlist.cs
- SingleTagSectionHandler.cs
- TextSchema.cs
- ThicknessKeyFrameCollection.cs
- _ConnectionGroup.cs
- CultureSpecificCharacterBufferRange.cs
- TypeUsage.cs
- SmiEventSink_DeferedProcessing.cs
- XmlTextReaderImplHelpers.cs
- X509Certificate.cs
- EntityCommandDefinition.cs
- EventLogPermission.cs
- DataRecordInfo.cs
- XmlTextReaderImplHelpers.cs
- WebPartCatalogAddVerb.cs
- TemplateEditingFrame.cs
- InlineUIContainer.cs
- __ComObject.cs
- DataSourceControlBuilder.cs
- StylusPointProperties.cs
- RuntimeArgument.cs
- BaseCAMarshaler.cs
- DataServiceRequest.cs
- EllipseGeometry.cs
- XmlReader.cs
- CodeObjectCreateExpression.cs
- CroppedBitmap.cs
- ApplicationInfo.cs
- XmlSchemaImporter.cs
- ConnectionPoint.cs
- CodeConditionStatement.cs
- DictionaryEntry.cs
- Preprocessor.cs
- ClassValidator.cs
- XmlReader.cs
- MarkupProperty.cs
- ParamArrayAttribute.cs
- DelimitedListTraceListener.cs
- NetworkInformationException.cs
- SqlHelper.cs
- Parser.cs
- PolicyManager.cs
- AssemblyGen.cs
- StringAnimationBase.cs
- SparseMemoryStream.cs
- CompiledRegexRunner.cs
- StringToken.cs
- TreeWalker.cs
- SafeLocalAllocation.cs
- AbstractSvcMapFileLoader.cs
- UniqueIdentifierService.cs
- AppSecurityManager.cs
- Util.cs
- InlinedAggregationOperator.cs
- HtmlImage.cs
- SerializationStore.cs
- Odbc32.cs
- LinqDataSourceSelectEventArgs.cs
- AsyncDataRequest.cs
- DeclaredTypeValidatorAttribute.cs
- IDQuery.cs
- AuthenticationService.cs
- InfoCardRSAOAEPKeyExchangeDeformatter.cs
- InputMethodStateTypeInfo.cs
- NextPreviousPagerField.cs
- TdsRecordBufferSetter.cs
- ContextBase.cs
- TypefaceCollection.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- HandleCollector.cs
- CompilerGeneratedAttribute.cs
- DiscoveryServerProtocol.cs
- DbParameterCollectionHelper.cs
- EndpointInstanceProvider.cs
- OracleRowUpdatingEventArgs.cs
- EventMappingSettingsCollection.cs
- XmlObjectSerializerWriteContext.cs
- DoubleIndependentAnimationStorage.cs
- TextureBrush.cs
- AutoCompleteStringCollection.cs
- XmlSchemaExporter.cs
- RegexCapture.cs
- DataTableClearEvent.cs
- CompiledRegexRunnerFactory.cs
- Matrix.cs
- SqlConnectionPoolGroupProviderInfo.cs
- NumericExpr.cs
- DataFormats.cs
- FatalException.cs
- ItemCollection.cs
- UrlMappingCollection.cs
- HostedBindingBehavior.cs
- PropertyChangeTracker.cs
- SqlConnectionManager.cs
- FilterException.cs
- ComponentManagerBroker.cs
- DataGridViewTopLeftHeaderCell.cs
- RenderData.cs