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
- sitestring.cs
- SafeFileMapViewHandle.cs
- diagnosticsswitches.cs
- CardSpaceException.cs
- securitycriticaldata.cs
- QuadraticBezierSegment.cs
- CodePageEncoding.cs
- ServiceRouteHandler.cs
- Control.cs
- PerspectiveCamera.cs
- RewritingProcessor.cs
- SQLGuid.cs
- Clause.cs
- QuerySafeNavigator.cs
- TargetFrameworkUtil.cs
- DefaultExpression.cs
- XPathDocument.cs
- CharacterMetrics.cs
- DesignTimeParseData.cs
- ConfigXmlAttribute.cs
- ToolStripScrollButton.cs
- DatatypeImplementation.cs
- BrowserTree.cs
- AssociationTypeEmitter.cs
- SchemaImporterExtensionsSection.cs
- UTF8Encoding.cs
- HttpServerVarsCollection.cs
- EncryptedKey.cs
- ContentOperations.cs
- Italic.cs
- XslCompiledTransform.cs
- SecurityMode.cs
- LogManagementAsyncResult.cs
- PrintControllerWithStatusDialog.cs
- DesignerSerializationManager.cs
- DispatcherProcessingDisabled.cs
- XsltConvert.cs
- Msmq3PoisonHandler.cs
- TextHidden.cs
- WebPartEditVerb.cs
- IpcChannel.cs
- AssociationEndMember.cs
- ConfigurationSectionGroupCollection.cs
- MimeTypeMapper.cs
- TraceListeners.cs
- InputMethodStateChangeEventArgs.cs
- PenLineCapValidation.cs
- HtmlInputButton.cs
- JsonFormatGeneratorStatics.cs
- SkewTransform.cs
- CommandID.cs
- SessionParameter.cs
- CollectionChangedEventManager.cs
- latinshape.cs
- Verify.cs
- XPathParser.cs
- WsatConfiguration.cs
- ArgIterator.cs
- RSACryptoServiceProvider.cs
- XmlUtf8RawTextWriter.cs
- ListBoxItemAutomationPeer.cs
- XmlHierarchicalDataSourceView.cs
- UndirectedGraph.cs
- RC2CryptoServiceProvider.cs
- DesigntimeLicenseContextSerializer.cs
- StrongName.cs
- EventHandlersDesigner.cs
- ControlsConfig.cs
- RIPEMD160Managed.cs
- HttpCacheVaryByContentEncodings.cs
- FocusChangedEventArgs.cs
- DefaultParameterValueAttribute.cs
- GridViewCancelEditEventArgs.cs
- PostBackOptions.cs
- Point3DAnimationUsingKeyFrames.cs
- WebSysDisplayNameAttribute.cs
- FileSystemInfo.cs
- DescendantQuery.cs
- DebugView.cs
- ELinqQueryState.cs
- ConsoleCancelEventArgs.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- CaseInsensitiveComparer.cs
- ExtentKey.cs
- TabRenderer.cs
- SoapAttributes.cs
- HMACSHA256.cs
- SqlGatherConsumedAliases.cs
- Condition.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- XmlSchemaExporter.cs
- HtmlTernaryTree.cs
- SwitchLevelAttribute.cs
- DiagnosticTraceSource.cs
- ListViewInsertionMark.cs
- ToolboxItemCollection.cs
- ReadOnlyCollectionBase.cs
- VirtualizedItemPattern.cs
- M3DUtil.cs
- BodyWriter.cs