Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DrawingGroup.cs
- XmlBufferReader.cs
- MailDefinition.cs
- SqlSelectStatement.cs
- PngBitmapDecoder.cs
- FrameworkContentElementAutomationPeer.cs
- MetadataItemEmitter.cs
- PropertiesTab.cs
- LateBoundBitmapDecoder.cs
- IPAddress.cs
- CharEnumerator.cs
- PersonalizationStateQuery.cs
- IPGlobalProperties.cs
- XmlStreamStore.cs
- XmlCDATASection.cs
- ErrorCodes.cs
- MetaForeignKeyColumn.cs
- SecureEnvironment.cs
- OletxDependentTransaction.cs
- ToolStripDropDownClosingEventArgs.cs
- PolyLineSegmentFigureLogic.cs
- WebControl.cs
- EventSource.cs
- SelectionProcessor.cs
- DataServiceQueryOfT.cs
- NavigationPropertyEmitter.cs
- _RequestCacheProtocol.cs
- dataobject.cs
- InputLanguageCollection.cs
- ObjectCacheSettings.cs
- FirstMatchCodeGroup.cs
- DataGridViewButtonColumn.cs
- LinqDataSourceEditData.cs
- XsdDuration.cs
- HitTestWithGeometryDrawingContextWalker.cs
- XmlAttributeAttribute.cs
- RootProjectionNode.cs
- CommentEmitter.cs
- NullableDoubleAverageAggregationOperator.cs
- RegexBoyerMoore.cs
- TiffBitmapDecoder.cs
- TypeToken.cs
- MetafileHeader.cs
- HtmlTernaryTree.cs
- DataGridTable.cs
- SqlOuterApplyReducer.cs
- RegionIterator.cs
- XamlParser.cs
- Attachment.cs
- QueueProcessor.cs
- ellipse.cs
- BooleanAnimationUsingKeyFrames.cs
- HelpEvent.cs
- StackSpiller.cs
- DataViewManagerListItemTypeDescriptor.cs
- XmlText.cs
- SortFieldComparer.cs
- SHA256Cng.cs
- StateInitialization.cs
- IPGlobalProperties.cs
- SafeSecurityHandles.cs
- BindMarkupExtensionSerializer.cs
- AssemblyCollection.cs
- EnumBuilder.cs
- CapabilitiesRule.cs
- TimeSpanConverter.cs
- AstTree.cs
- StringUtil.cs
- XmlObjectSerializerReadContextComplex.cs
- StaticFileHandler.cs
- MissingManifestResourceException.cs
- SelectionPattern.cs
- DockPattern.cs
- GenericIdentity.cs
- SessionState.cs
- Point3DCollection.cs
- HttpPostServerProtocol.cs
- ButtonColumn.cs
- BindingListCollectionView.cs
- BitmapImage.cs
- ElasticEase.cs
- Utility.cs
- AmbientLight.cs
- Msec.cs
- filewebresponse.cs
- CompilerResults.cs
- SmiContext.cs
- LabelEditEvent.cs
- Run.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- EventProviderWriter.cs
- CommonXSendMessage.cs
- OdbcParameter.cs
- DateTimePickerDesigner.cs
- PngBitmapEncoder.cs
- MaskedTextBox.cs
- BaseTemplateBuildProvider.cs
- TypeUtils.cs
- Lazy.cs
- Lasso.cs