Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- ObjRef.cs
- SystemGatewayIPAddressInformation.cs
- BuildProviderUtils.cs
- AuthenticodeSignatureInformation.cs
- ContextStaticAttribute.cs
- TraceHandler.cs
- CatalogPartChrome.cs
- PathFigure.cs
- DataReaderContainer.cs
- WinFormsUtils.cs
- BrowserCapabilitiesFactoryBase.cs
- SecurityPolicySection.cs
- DBNull.cs
- MatrixTransform.cs
- ReaderOutput.cs
- WpfKnownMemberInvoker.cs
- BatchParser.cs
- BigInt.cs
- MsmqAppDomainProtocolHandler.cs
- LinearGradientBrush.cs
- XsdValidatingReader.cs
- CssTextWriter.cs
- ScrollChangedEventArgs.cs
- Source.cs
- TableStyle.cs
- HttpListenerContext.cs
- GlyphRunDrawing.cs
- WindowsFormsHostPropertyMap.cs
- MetadataItemEmitter.cs
- WindowsListViewItemStartMenu.cs
- AtlasWeb.Designer.cs
- CodeDomComponentSerializationService.cs
- JsonReaderDelegator.cs
- SortedList.cs
- ToolStripItemEventArgs.cs
- WebPartEditorApplyVerb.cs
- MLangCodePageEncoding.cs
- SymmetricKey.cs
- WebServiceParameterData.cs
- ProfileParameter.cs
- FileDocument.cs
- HttpContextServiceHost.cs
- ReceiveActivityDesignerTheme.cs
- InputManager.cs
- DataMemberConverter.cs
- PropertyFilterAttribute.cs
- TripleDES.cs
- ApplicationFileCodeDomTreeGenerator.cs
- SchemaCollectionCompiler.cs
- ToolboxItemFilterAttribute.cs
- SoapRpcServiceAttribute.cs
- DataGridViewCellStateChangedEventArgs.cs
- OracleRowUpdatedEventArgs.cs
- DocumentManager.cs
- followingquery.cs
- TemplateEditingFrame.cs
- TextBoxBaseDesigner.cs
- RawKeyboardInputReport.cs
- CompilerScope.Storage.cs
- UnSafeCharBuffer.cs
- GroupByQueryOperator.cs
- ScriptRegistrationManager.cs
- TypefaceCollection.cs
- SByteConverter.cs
- ResourceWriter.cs
- SMSvcHost.cs
- DefaultEvaluationContext.cs
- ListViewGroupItemCollection.cs
- ServiceObjectContainer.cs
- WebPartMovingEventArgs.cs
- XmlEventCache.cs
- EnumConverter.cs
- InvalidEnumArgumentException.cs
- RegexFCD.cs
- ValueTypeFixupInfo.cs
- DataGridTableCollection.cs
- SystemColors.cs
- StylusPointPropertyInfo.cs
- DataGridViewUtilities.cs
- SkewTransform.cs
- KeyPressEvent.cs
- RuleAction.cs
- BinaryOperationBinder.cs
- DrawToolTipEventArgs.cs
- sqlcontext.cs
- ScrollChangedEventArgs.cs
- PrintingPermissionAttribute.cs
- DataGridViewIntLinkedList.cs
- SqlTriggerContext.cs
- DataGridItemAutomationPeer.cs
- CapabilitiesRule.cs
- CheckBoxFlatAdapter.cs
- DataSourceNameHandler.cs
- StartUpEventArgs.cs
- CompositeCollection.cs
- MasterPageBuildProvider.cs
- SimpleApplicationHost.cs
- SrgsToken.cs
- ActivityExecutionContext.cs
- IntegerValidatorAttribute.cs