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
- XmlLanguageConverter.cs
- ClientScriptManagerWrapper.cs
- HostSecurityManager.cs
- comcontractssection.cs
- RelatedCurrencyManager.cs
- SkipStoryboardToFill.cs
- ItemsPanelTemplate.cs
- Int64.cs
- PerformanceCounterPermissionEntry.cs
- FloaterBaseParagraph.cs
- ProtocolsSection.cs
- CorruptStoreException.cs
- FlowDocumentScrollViewer.cs
- TimeSpanParse.cs
- ModelItem.cs
- Splitter.cs
- SHA1Managed.cs
- DockAndAnchorLayout.cs
- ContainerActivationHelper.cs
- ByteAnimationBase.cs
- Scheduling.cs
- SeekStoryboard.cs
- BrushConverter.cs
- safelink.cs
- Highlights.cs
- ToolStripDropDownDesigner.cs
- Configuration.cs
- SmtpReplyReaderFactory.cs
- CorrelationManager.cs
- XmlSchemaFacet.cs
- FontFamilyIdentifier.cs
- SubqueryRules.cs
- RegisteredHiddenField.cs
- MissingSatelliteAssemblyException.cs
- UIElementCollection.cs
- DataGridViewRowCancelEventArgs.cs
- MimeWriter.cs
- SubqueryRules.cs
- __TransparentProxy.cs
- DependencyPropertyAttribute.cs
- MsmqInputSessionChannel.cs
- AssociationSet.cs
- StdValidatorsAndConverters.cs
- UnsafeNativeMethodsPenimc.cs
- ReflectionTypeLoadException.cs
- WebPartManager.cs
- _BasicClient.cs
- RevocationPoint.cs
- ExpressionEditor.cs
- XmlValueConverter.cs
- SeparatorAutomationPeer.cs
- InstancePersistenceCommand.cs
- TemplateKeyConverter.cs
- Duration.cs
- CheckBoxPopupAdapter.cs
- FieldDescriptor.cs
- SiteMembershipCondition.cs
- RegistrationServices.cs
- WebPartTransformerCollection.cs
- ListView.cs
- AncestorChangedEventArgs.cs
- ColumnBinding.cs
- HwndProxyElementProvider.cs
- ManualResetEventSlim.cs
- InternalRelationshipCollection.cs
- SelectionEditor.cs
- HttpResponse.cs
- SerializationSectionGroup.cs
- AQNBuilder.cs
- RoutedEventConverter.cs
- ExpandSegmentCollection.cs
- XamlTreeBuilderBamlRecordWriter.cs
- RoutedEventConverter.cs
- CollectionType.cs
- UserValidatedEventArgs.cs
- XmlDomTextWriter.cs
- XMLUtil.cs
- EntityReference.cs
- SqlDataSourceCache.cs
- ISCIIEncoding.cs
- nulltextnavigator.cs
- AdapterUtil.cs
- ModelVisual3D.cs
- AttributeXamlType.cs
- TextParaClient.cs
- GatewayDefinition.cs
- PathGeometry.cs
- Separator.cs
- DataGridViewCellLinkedList.cs
- DbExpressionVisitor_TResultType.cs
- XmlDataSourceView.cs
- XmlBindingWorker.cs
- UnionCodeGroup.cs
- SocketException.cs
- Documentation.cs
- ControlEvent.cs
- ProcessManager.cs
- MultiBindingExpression.cs
- IndexerNameAttribute.cs
- SqlBooleanizer.cs