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
- LinkedResource.cs
- WebServiceData.cs
- ValidationResult.cs
- CharacterBuffer.cs
- ProcessModuleCollection.cs
- ArrayItemReference.cs
- SerialErrors.cs
- ReplyChannelBinder.cs
- NullableDoubleMinMaxAggregationOperator.cs
- WebBrowserEvent.cs
- ObjectStateFormatter.cs
- UpdatePanelTrigger.cs
- DataRecord.cs
- ArglessEventHandlerProxy.cs
- RemotingException.cs
- _ShellExpression.cs
- WindowsSysHeader.cs
- CapabilitiesUse.cs
- OracleConnectionFactory.cs
- DesignTimeParseData.cs
- ToolboxItemFilterAttribute.cs
- ColumnCollection.cs
- CodeParameterDeclarationExpressionCollection.cs
- MessageBox.cs
- LineMetrics.cs
- FontFaceLayoutInfo.cs
- BitFlagsGenerator.cs
- ObjectDisposedException.cs
- StringUtil.cs
- ClosableStream.cs
- HtmlControlDesigner.cs
- wgx_sdk_version.cs
- remotingproxy.cs
- ArraySegment.cs
- GeneralTransform3DTo2D.cs
- XsltInput.cs
- DocumentPage.cs
- NamespaceList.cs
- TreeView.cs
- Calendar.cs
- WebPartDisplayModeCollection.cs
- MembershipSection.cs
- ClientRuntimeConfig.cs
- PropertyToken.cs
- ByteAnimation.cs
- ApplicationBuildProvider.cs
- VisualBasicSettingsHandler.cs
- SafeRightsManagementPubHandle.cs
- ByteStreamGeometryContext.cs
- XmlSchemaAttribute.cs
- ProxyHelper.cs
- COM2IDispatchConverter.cs
- ContextMenuStrip.cs
- Triplet.cs
- ThreadAbortException.cs
- TextRangeEdit.cs
- CodeAttributeArgumentCollection.cs
- ArrayConverter.cs
- OdbcTransaction.cs
- SpinWait.cs
- DispatcherExceptionFilterEventArgs.cs
- ValidatedMobileControlConverter.cs
- hresults.cs
- ScrollContentPresenter.cs
- NativeMethods.cs
- NodeInfo.cs
- HttpPostedFile.cs
- ThreadPool.cs
- HostingPreferredMapPath.cs
- StringAttributeCollection.cs
- JobCollate.cs
- WebSysDefaultValueAttribute.cs
- StylusPoint.cs
- ChildChangedEventArgs.cs
- HtmlTableCell.cs
- HttpRuntimeSection.cs
- UIAgentAsyncBeginRequest.cs
- Line.cs
- ListBox.cs
- ExpressionConverter.cs
- ToolBarButton.cs
- URLIdentityPermission.cs
- QueryConverter.cs
- DataStreams.cs
- DesignTimeTemplateParser.cs
- CrossSiteScriptingValidation.cs
- SafeEventLogReadHandle.cs
- SqlNode.cs
- DBAsyncResult.cs
- OutputCacheProfileCollection.cs
- SelectionProcessor.cs
- PointF.cs
- ObjectStateManager.cs
- XmlWellformedWriter.cs
- ProcessModelInfo.cs
- ThreadAttributes.cs
- base64Transforms.cs
- IChannel.cs
- TreeNodeBindingCollection.cs
- CompoundFileStreamReference.cs