Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataSet / System / Data / DataSetUtil.cs / 1 / DataSetUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Data; using System.Data.DataSetExtensions; using System.Diagnostics; internal static class DataSetUtil { #region CheckArgument internal static void CheckArgumentNull(T argumentValue, string argumentName) where T : class { if (null == argumentValue) { throw ArgumentNull(argumentName); } } #endregion #region Trace private static T TraceException (string trace, T e) { Debug.Assert(null != e, "TraceException: null Exception"); if (null != e) { //Bid.Trace(trace, e.ToString()); // will include callstack if permission is available } return e; } private static T TraceExceptionAsReturnValue (T e) { return TraceException(" '%ls'\n", e); } #endregion #region new Exception internal static ArgumentException Argument(string message) { return TraceExceptionAsReturnValue(new ArgumentException(message)); } internal static ArgumentNullException ArgumentNull(string message) { return TraceExceptionAsReturnValue(new ArgumentNullException(message)); } internal static ArgumentOutOfRangeException ArgumentOutOfRange(string message, string parameterName) { return TraceExceptionAsReturnValue(new ArgumentOutOfRangeException(parameterName, message)); } internal static InvalidCastException InvalidCast(string message) { return TraceExceptionAsReturnValue(new InvalidCastException(message)); } internal static InvalidOperationException InvalidOperation(string message) { return TraceExceptionAsReturnValue(new InvalidOperationException(message)); } internal static NotSupportedException NotSupported(string message) { return TraceExceptionAsReturnValue(new NotSupportedException(message)); } #endregion #region new EnumerationValueNotValid static internal ArgumentOutOfRangeException InvalidEnumerationValue(Type type, int value) { return ArgumentOutOfRange(Strings.DataSetLinq_InvalidEnumerationValue(type.Name, value.ToString(System.Globalization.CultureInfo.InvariantCulture)), type.Name); } static internal ArgumentOutOfRangeException InvalidDataRowState(DataRowState value) { #if DEBUG switch (value) { case DataRowState.Detached: case DataRowState.Unchanged: case DataRowState.Added: case DataRowState.Deleted: case DataRowState.Modified: Debug.Assert(false, "valid DataRowState " + value.ToString()); break; } #endif return InvalidEnumerationValue(typeof(DataRowState), (int)value); } static internal ArgumentOutOfRangeException InvalidLoadOption(LoadOption value) { #if DEBUG switch (value) { case LoadOption.OverwriteChanges: case LoadOption.PreserveChanges: case LoadOption.Upsert: Debug.Assert(false, "valid LoadOption " + value.ToString()); break; } #endif return InvalidEnumerationValue(typeof(LoadOption), (int)value); } #endregion // only StackOverflowException & ThreadAbortException are sealed classes static private readonly Type StackOverflowType = typeof(System.StackOverflowException); static private readonly Type OutOfMemoryType = typeof(System.OutOfMemoryException); static private readonly Type ThreadAbortType = typeof(System.Threading.ThreadAbortException); static private readonly Type NullReferenceType = typeof(System.NullReferenceException); static private readonly Type AccessViolationType = typeof(System.AccessViolationException); static private readonly Type SecurityType = typeof(System.Security.SecurityException); static internal bool IsCatchableExceptionType(Exception e) { // a 'catchable' exception is defined by what it is not. Type type = e.GetType(); return ((type != StackOverflowType) && (type != OutOfMemoryType) && (type != ThreadAbortType) && (type != NullReferenceType) && (type != AccessViolationType) && !SecurityType.IsAssignableFrom(type)); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Data; using System.Data.DataSetExtensions; using System.Diagnostics; internal static class DataSetUtil { #region CheckArgument internal static void CheckArgumentNull(T argumentValue, string argumentName) where T : class { if (null == argumentValue) { throw ArgumentNull(argumentName); } } #endregion #region Trace private static T TraceException (string trace, T e) { Debug.Assert(null != e, "TraceException: null Exception"); if (null != e) { //Bid.Trace(trace, e.ToString()); // will include callstack if permission is available } return e; } private static T TraceExceptionAsReturnValue (T e) { return TraceException(" '%ls'\n", e); } #endregion #region new Exception internal static ArgumentException Argument(string message) { return TraceExceptionAsReturnValue(new ArgumentException(message)); } internal static ArgumentNullException ArgumentNull(string message) { return TraceExceptionAsReturnValue(new ArgumentNullException(message)); } internal static ArgumentOutOfRangeException ArgumentOutOfRange(string message, string parameterName) { return TraceExceptionAsReturnValue(new ArgumentOutOfRangeException(parameterName, message)); } internal static InvalidCastException InvalidCast(string message) { return TraceExceptionAsReturnValue(new InvalidCastException(message)); } internal static InvalidOperationException InvalidOperation(string message) { return TraceExceptionAsReturnValue(new InvalidOperationException(message)); } internal static NotSupportedException NotSupported(string message) { return TraceExceptionAsReturnValue(new NotSupportedException(message)); } #endregion #region new EnumerationValueNotValid static internal ArgumentOutOfRangeException InvalidEnumerationValue(Type type, int value) { return ArgumentOutOfRange(Strings.DataSetLinq_InvalidEnumerationValue(type.Name, value.ToString(System.Globalization.CultureInfo.InvariantCulture)), type.Name); } static internal ArgumentOutOfRangeException InvalidDataRowState(DataRowState value) { #if DEBUG switch (value) { case DataRowState.Detached: case DataRowState.Unchanged: case DataRowState.Added: case DataRowState.Deleted: case DataRowState.Modified: Debug.Assert(false, "valid DataRowState " + value.ToString()); break; } #endif return InvalidEnumerationValue(typeof(DataRowState), (int)value); } static internal ArgumentOutOfRangeException InvalidLoadOption(LoadOption value) { #if DEBUG switch (value) { case LoadOption.OverwriteChanges: case LoadOption.PreserveChanges: case LoadOption.Upsert: Debug.Assert(false, "valid LoadOption " + value.ToString()); break; } #endif return InvalidEnumerationValue(typeof(LoadOption), (int)value); } #endregion // only StackOverflowException & ThreadAbortException are sealed classes static private readonly Type StackOverflowType = typeof(System.StackOverflowException); static private readonly Type OutOfMemoryType = typeof(System.OutOfMemoryException); static private readonly Type ThreadAbortType = typeof(System.Threading.ThreadAbortException); static private readonly Type NullReferenceType = typeof(System.NullReferenceException); static private readonly Type AccessViolationType = typeof(System.AccessViolationException); static private readonly Type SecurityType = typeof(System.Security.SecurityException); static internal bool IsCatchableExceptionType(Exception e) { // a 'catchable' exception is defined by what it is not. Type type = e.GetType(); return ((type != StackOverflowType) && (type != OutOfMemoryType) && (type != ThreadAbortType) && (type != NullReferenceType) && (type != AccessViolationType) && !SecurityType.IsAssignableFrom(type)); } } // 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
- MLangCodePageEncoding.cs
- ParallelTimeline.cs
- ModelVisual3D.cs
- AlgoModule.cs
- ClientTarget.cs
- CallContext.cs
- XmlTextReader.cs
- ProtocolsConfiguration.cs
- ConstraintEnumerator.cs
- login.cs
- FormViewPagerRow.cs
- SoapFormatExtensions.cs
- MimeBasePart.cs
- InvalidOperationException.cs
- __ComObject.cs
- ProfileSettingsCollection.cs
- MailBnfHelper.cs
- SoapDocumentMethodAttribute.cs
- CompositeScriptReferenceEventArgs.cs
- MissingSatelliteAssemblyException.cs
- Attributes.cs
- DataGridViewImageColumn.cs
- _SslSessionsCache.cs
- SecureEnvironment.cs
- PageOutputQuality.cs
- DesignRelation.cs
- StrokeSerializer.cs
- GCHandleCookieTable.cs
- GetLedgerEntryForRecipientRequest.cs
- HttpCacheVaryByContentEncodings.cs
- AutomationPropertyChangedEventArgs.cs
- SecurityHelper.cs
- ActivityFunc.cs
- CellTreeNode.cs
- FontWeight.cs
- DataGridCommandEventArgs.cs
- ChildrenQuery.cs
- ExcCanonicalXml.cs
- CodeCatchClauseCollection.cs
- Figure.cs
- ToolBarTray.cs
- ApplicationSecurityManager.cs
- OlePropertyStructs.cs
- XmlSchemaAnyAttribute.cs
- SmtpCommands.cs
- ReservationCollection.cs
- RemotingConfiguration.cs
- EasingKeyFrames.cs
- LightweightCodeGenerator.cs
- DataSourceCacheDurationConverter.cs
- BlurEffect.cs
- OneToOneMappingSerializer.cs
- ButtonStandardAdapter.cs
- InternalDispatchObject.cs
- HwndMouseInputProvider.cs
- Debug.cs
- MapPathBasedVirtualPathProvider.cs
- EditingMode.cs
- BufferedGenericXmlSecurityToken.cs
- TableCellAutomationPeer.cs
- SystemIcmpV6Statistics.cs
- PropertyValue.cs
- RoleService.cs
- UnsafeNativeMethods.cs
- GeneralTransformCollection.cs
- FieldTemplateFactory.cs
- ConstantProjectedSlot.cs
- HyperLinkColumn.cs
- ViewgenGatekeeper.cs
- HttpConfigurationContext.cs
- PositiveTimeSpanValidator.cs
- MarkupObject.cs
- SendKeys.cs
- DataGridCaption.cs
- HwndKeyboardInputProvider.cs
- InkCanvasSelectionAdorner.cs
- GenericEnumConverter.cs
- DrawingBrush.cs
- SafeFileMapViewHandle.cs
- TreeNodeCollection.cs
- BadImageFormatException.cs
- TypeElement.cs
- PresentationSource.cs
- AbstractDataSvcMapFileLoader.cs
- Mapping.cs
- WindowsAuthenticationModule.cs
- JumpPath.cs
- CharacterBufferReference.cs
- BufferBuilder.cs
- UdpTransportBindingElement.cs
- GetBrowserTokenRequest.cs
- SemaphoreFullException.cs
- MruCache.cs
- DataGridItemCollection.cs
- SQLInt32.cs
- EntityContainerRelationshipSet.cs
- OdbcFactory.cs
- UITypeEditor.cs
- BoundsDrawingContextWalker.cs
- SkinBuilder.cs