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
- CorrelationKeyCalculator.cs
- RegexCompilationInfo.cs
- XPathScanner.cs
- SrgsItemList.cs
- DataListCommandEventArgs.cs
- TreeViewHitTestInfo.cs
- DesignerToolboxInfo.cs
- DeleteMemberBinder.cs
- HandlerFactoryWrapper.cs
- EmptyControlCollection.cs
- RMPublishingDialog.cs
- RectangleHotSpot.cs
- SystemNetworkInterface.cs
- UnitySerializationHolder.cs
- ToolBar.cs
- externdll.cs
- FrameworkPropertyMetadata.cs
- SqlDataRecord.cs
- PipelineDeploymentState.cs
- HwndSourceKeyboardInputSite.cs
- SafeNativeMethods.cs
- XXXOnTypeBuilderInstantiation.cs
- Clipboard.cs
- XamlToRtfParser.cs
- TypeListConverter.cs
- DataRow.cs
- WSFederationHttpSecurity.cs
- StdRegProviderWrapper.cs
- EndpointNotFoundException.cs
- ClientConfigPaths.cs
- HttpCapabilitiesSectionHandler.cs
- StateDesigner.cs
- PointUtil.cs
- DataSourceNameHandler.cs
- ViewBox.cs
- DeleteMemberBinder.cs
- FirewallWrapper.cs
- EdmConstants.cs
- Base64Stream.cs
- SoapParser.cs
- MetadataPropertyAttribute.cs
- ConfigurationLockCollection.cs
- ViewCellSlot.cs
- Label.cs
- TypeValidationEventArgs.cs
- HtmlInputFile.cs
- XmlHierarchicalEnumerable.cs
- ParamArrayAttribute.cs
- ArraySubsetEnumerator.cs
- TemplateControlBuildProvider.cs
- DesignerDataTableBase.cs
- LocatorPart.cs
- TypeCodeDomSerializer.cs
- PageAsyncTaskManager.cs
- DataGridrowEditEndingEventArgs.cs
- DataListCommandEventArgs.cs
- TabControl.cs
- FixedPageStructure.cs
- ColumnHeader.cs
- ImageMapEventArgs.cs
- SoapParser.cs
- ObjectDataSourceFilteringEventArgs.cs
- SafeFileHandle.cs
- codemethodreferenceexpression.cs
- TextLineBreak.cs
- WebPartCatalogCloseVerb.cs
- ScriptingAuthenticationServiceSection.cs
- EntityReference.cs
- KernelTypeValidation.cs
- Sequence.cs
- RequestUriProcessor.cs
- ServiceBuildProvider.cs
- GenericAuthenticationEventArgs.cs
- GridViewColumnCollectionChangedEventArgs.cs
- UDPClient.cs
- DefaultTextStore.cs
- CodeIterationStatement.cs
- SqlCacheDependencyDatabase.cs
- RootBrowserWindow.cs
- ButtonBase.cs
- ClientConfigurationSystem.cs
- EntityDataSourceDesigner.cs
- SQLInt32.cs
- DbConnectionStringBuilder.cs
- RegexWriter.cs
- SRGSCompiler.cs
- EdmSchemaAttribute.cs
- HttpResponse.cs
- Globals.cs
- HostingEnvironmentSection.cs
- TableHeaderCell.cs
- DoubleUtil.cs
- CapiNative.cs
- SimpleRecyclingCache.cs
- XmlSchemaInferenceException.cs
- ActionMessageFilter.cs
- IntSecurity.cs
- ObjectComplexPropertyMapping.cs
- StatusBar.cs