Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / ArgumentOutOfRangeException.cs / 1305376 / 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; using System.Diagnostics.Contracts; // 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 { #if !FEATURE_SPLIT_RESOURCES private static String _rangeMessage; #endif private Object m_actualValue; private static String RangeMessage { get { #if FEATURE_SPLIT_RESOURCES return Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); #else if (_rangeMessage == null) _rangeMessage = Environment.GetResourceString("Arg_ArgumentOutOfRangeException"); return _rangeMessage; #endif } } // 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 = Environment.GetRuntimeResourceString("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; } } [System.Security.SecurityCritical] // auto-generated_required public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info==null) { throw new ArgumentNullException("info"); } Contract.EndContractBlock(); base.GetObjectData(info, context); info.AddValue("ActualValue", m_actualValue, typeof(Object)); } [System.Security.SecuritySafeCritical] // auto-generated 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
- UntypedNullExpression.cs
- PriorityChain.cs
- CrossSiteScriptingValidation.cs
- DetailsView.cs
- DataServiceHost.cs
- ObjRef.cs
- DeflateStreamAsyncResult.cs
- FixedNode.cs
- IntellisenseTextBox.designer.cs
- DispatchWrapper.cs
- Int32CAMarshaler.cs
- ContainerUIElement3D.cs
- ZipIOCentralDirectoryFileHeader.cs
- DiscoveryClientDocuments.cs
- IntegerFacetDescriptionElement.cs
- UrlPath.cs
- TextParaLineResult.cs
- ParseHttpDate.cs
- XmlSchemaSimpleTypeRestriction.cs
- GroupStyle.cs
- TreeNodeMouseHoverEvent.cs
- ClientFormsAuthenticationMembershipProvider.cs
- HierarchicalDataSourceControl.cs
- Timer.cs
- ClientTarget.cs
- DataServiceException.cs
- UrlAuthorizationModule.cs
- CAGDesigner.cs
- CompilerLocalReference.cs
- MouseBinding.cs
- Visual.cs
- DataPagerFieldItem.cs
- ListenerElementsCollection.cs
- XmlChildNodes.cs
- ManagedIStream.cs
- PocoEntityKeyStrategy.cs
- FontStyleConverter.cs
- EntityModelSchemaGenerator.cs
- XmlNamespaceDeclarationsAttribute.cs
- GPRECT.cs
- DoubleUtil.cs
- SchemaElementLookUpTable.cs
- GeneralTransformCollection.cs
- ValidatingPropertiesEventArgs.cs
- ExpressionConverter.cs
- OracleParameterCollection.cs
- PickDesigner.xaml.cs
- Delay.cs
- SecurityElement.cs
- StorageComplexTypeMapping.cs
- FieldToken.cs
- DataKeyArray.cs
- OwnerDrawPropertyBag.cs
- HttpCookieCollection.cs
- ScriptingJsonSerializationSection.cs
- EventHandlerList.cs
- UpdatePanelControlTrigger.cs
- Polyline.cs
- DiagnosticsConfiguration.cs
- DataFieldEditor.cs
- UniqueEventHelper.cs
- APCustomTypeDescriptor.cs
- InvokeDelegate.cs
- CompilerGeneratedAttribute.cs
- DockPanel.cs
- LinqDataSourceStatusEventArgs.cs
- DataSetMappper.cs
- TransformerInfoCollection.cs
- httpserverutility.cs
- ElasticEase.cs
- QuaternionRotation3D.cs
- ContextProperty.cs
- CodeSnippetExpression.cs
- WSTransactionSection.cs
- AstTree.cs
- DataGridViewSortCompareEventArgs.cs
- HttpConfigurationSystem.cs
- DrawingContext.cs
- TraceRecord.cs
- ControlIdConverter.cs
- AtomServiceDocumentSerializer.cs
- DataGridViewBand.cs
- ProfileInfo.cs
- SizeAnimation.cs
- AttributeInfo.cs
- BitmapMetadataEnumerator.cs
- WsatServiceAddress.cs
- PropertyManager.cs
- SafeRightsManagementPubHandle.cs
- Drawing.cs
- EdmType.cs
- ItemsPanelTemplate.cs
- BulletChrome.cs
- Int32Animation.cs
- VariableElement.cs
- SRDisplayNameAttribute.cs
- AuthenticationModuleElement.cs
- ChangePasswordDesigner.cs
- PageStatePersister.cs
- ColumnProvider.cs