Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataSet / System / Data / DataSetUtil.cs / 1305376 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Button.cs
- MulticastOption.cs
- GeneralTransform3DGroup.cs
- HttpRawResponse.cs
- CallbackDebugElement.cs
- FigureParaClient.cs
- EntityContainer.cs
- CanExecuteRoutedEventArgs.cs
- BooleanStorage.cs
- Table.cs
- ValueTypeFixupInfo.cs
- TableRowCollection.cs
- RestHandler.cs
- KernelTypeValidation.cs
- New.cs
- XmlSchemaFacet.cs
- FormatterConverter.cs
- PrimaryKeyTypeConverter.cs
- TimeZoneNotFoundException.cs
- RijndaelManaged.cs
- AutoGeneratedFieldProperties.cs
- ArgumentNullException.cs
- SerializationHelper.cs
- CacheDependency.cs
- RealProxy.cs
- NameValueConfigurationCollection.cs
- DataBoundControlHelper.cs
- CachedFontFamily.cs
- HttpPostedFileWrapper.cs
- PropertyChangedEventManager.cs
- Scheduling.cs
- DialogResultConverter.cs
- ITreeGenerator.cs
- SrgsElementFactory.cs
- Rfc2898DeriveBytes.cs
- IdnElement.cs
- Label.cs
- SpellerHighlightLayer.cs
- ModelPerspective.cs
- WorkflowDesignerMessageFilter.cs
- TagMapCollection.cs
- RelationshipType.cs
- State.cs
- PresentationSource.cs
- Range.cs
- LineBreak.cs
- XmlSerializationWriter.cs
- CompilerWrapper.cs
- Perspective.cs
- PathFigureCollection.cs
- RuleCache.cs
- unsafenativemethodsother.cs
- COM2ColorConverter.cs
- VSDExceptions.cs
- xmlglyphRunInfo.cs
- ObjectManager.cs
- ColumnTypeConverter.cs
- SamlAuthorityBinding.cs
- SecurityTokenValidationException.cs
- XComponentModel.cs
- PartialCachingAttribute.cs
- XmlQualifiedName.cs
- ColumnMapCopier.cs
- SBCSCodePageEncoding.cs
- VirtualPath.cs
- NextPreviousPagerField.cs
- PathSegmentCollection.cs
- RelationshipDetailsCollection.cs
- TableItemPatternIdentifiers.cs
- contentDescriptor.cs
- QilGeneratorEnv.cs
- PriorityQueue.cs
- DataSourceCache.cs
- StreamSecurityUpgradeProvider.cs
- Padding.cs
- XamlFilter.cs
- WebServiceHandler.cs
- LinkedResource.cs
- BlurEffect.cs
- StylusPlugin.cs
- Int16Storage.cs
- PartitionResolver.cs
- TransactionChannelFactory.cs
- CheckBoxRenderer.cs
- WebOperationContext.cs
- SolidBrush.cs
- SimpleBitVector32.cs
- CacheAxisQuery.cs
- XPathExpr.cs
- X509UI.cs
- ScriptHandlerFactory.cs
- AdapterSwitches.cs
- GridItem.cs
- DataFieldCollectionEditor.cs
- _FixedSizeReader.cs
- HTMLTagNameToTypeMapper.cs
- CustomLineCap.cs
- XsltArgumentList.cs
- PathData.cs
- BrowserInteropHelper.cs