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
- MonitorWrapper.cs
- SecurityIdentifierConverter.cs
- WindowsSecurityTokenAuthenticator.cs
- DocumentViewerBase.cs
- HijriCalendar.cs
- RegistrySecurity.cs
- TreeViewAutomationPeer.cs
- DbReferenceCollection.cs
- LiteralTextContainerControlBuilder.cs
- TaskFormBase.cs
- RSAOAEPKeyExchangeDeformatter.cs
- AlignmentXValidation.cs
- XamlFilter.cs
- ContentIterators.cs
- PriorityQueue.cs
- BackoffTimeoutHelper.cs
- ParenthesizePropertyNameAttribute.cs
- Marshal.cs
- TypedServiceChannelBuilder.cs
- Membership.cs
- SessionPageStatePersister.cs
- FreezableDefaultValueFactory.cs
- ControlCodeDomSerializer.cs
- TransactionManager.cs
- UserUseLicenseDictionaryLoader.cs
- Storyboard.cs
- TraceRecords.cs
- AuthenticationModuleElement.cs
- MultipleViewProviderWrapper.cs
- x509utils.cs
- VarInfo.cs
- CapabilitiesSection.cs
- Maps.cs
- DataBindingsDialog.cs
- UdpMessageProperty.cs
- XamlFigureLengthSerializer.cs
- MessageEventSubscriptionService.cs
- XmlSchemaComplexContent.cs
- MultiTrigger.cs
- DataGridHyperlinkColumn.cs
- CacheDependency.cs
- ResXResourceReader.cs
- ParameterBuilder.cs
- DrawingContextDrawingContextWalker.cs
- EventManager.cs
- IISMapPath.cs
- SqlVersion.cs
- ImageAutomationPeer.cs
- DbModificationClause.cs
- SqlUserDefinedTypeAttribute.cs
- Classification.cs
- PasswordBoxAutomationPeer.cs
- EmbeddedMailObjectsCollection.cs
- GridViewCancelEditEventArgs.cs
- FormsAuthentication.cs
- RelationshipNavigation.cs
- _ProxyChain.cs
- SerializationFieldInfo.cs
- BindingContext.cs
- LookupNode.cs
- CustomAttributeBuilder.cs
- XmlChoiceIdentifierAttribute.cs
- CommonObjectSecurity.cs
- SoapIgnoreAttribute.cs
- ApplicationInterop.cs
- WindowsScrollBar.cs
- XPathBinder.cs
- OdbcConnectionFactory.cs
- PolicyLevel.cs
- WebPartEditVerb.cs
- ControlCollection.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- SelectionItemPattern.cs
- MULTI_QI.cs
- XmlWellformedWriterHelpers.cs
- TypedMessageConverter.cs
- IndentedWriter.cs
- NameSpaceExtractor.cs
- SettingsSection.cs
- PixelShader.cs
- HybridObjectCache.cs
- SQLRoleProvider.cs
- OleCmdHelper.cs
- GroupStyle.cs
- RSAProtectedConfigurationProvider.cs
- XmlSchemaInferenceException.cs
- QueryUtil.cs
- IsolatedStorageException.cs
- SspiSafeHandles.cs
- LicenseProviderAttribute.cs
- cookiecontainer.cs
- arabicshape.cs
- StructuredTypeInfo.cs
- ErrorHandler.cs
- ContextMenu.cs
- SequentialWorkflowHeaderFooter.cs
- CallTemplateAction.cs
- NameValuePair.cs
- PropertiesTab.cs
- EventLog.cs