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
- ByteAnimationUsingKeyFrames.cs
- GeneralTransform2DTo3D.cs
- RunInstallerAttribute.cs
- UIntPtr.cs
- ControlValuePropertyAttribute.cs
- PropagatorResult.cs
- ColorContextHelper.cs
- ConstructorNeedsTagAttribute.cs
- MessageContractMemberAttribute.cs
- PathData.cs
- SelectionItemPattern.cs
- Filter.cs
- ProviderConnectionPoint.cs
- HtmlForm.cs
- FullTextBreakpoint.cs
- OracleBoolean.cs
- ContentElementCollection.cs
- WsdlBuildProvider.cs
- MobileUserControl.cs
- UrlMapping.cs
- BindingEditor.xaml.cs
- PostBackOptions.cs
- SqlRetyper.cs
- AssociationSetMetadata.cs
- CustomCategoryAttribute.cs
- RawMouseInputReport.cs
- ExtensibleClassFactory.cs
- MSG.cs
- InstanceKeyView.cs
- XmlLoader.cs
- RewritingProcessor.cs
- DrawListViewItemEventArgs.cs
- SrgsSemanticInterpretationTag.cs
- ObjectQueryExecutionPlan.cs
- FilterEventArgs.cs
- MasterPage.cs
- XmlSchemaDatatype.cs
- CollectionChangedEventManager.cs
- SimpleWorkerRequest.cs
- AspProxy.cs
- RequestUriProcessor.cs
- Expressions.cs
- ViewService.cs
- MissingManifestResourceException.cs
- WindowsToolbar.cs
- AnimationException.cs
- CodeNamespaceImportCollection.cs
- EnumerationRangeValidationUtil.cs
- ServiceDeploymentInfo.cs
- Types.cs
- ProgressBar.cs
- SoapMessage.cs
- FocusTracker.cs
- OfTypeExpression.cs
- BindingExpressionUncommonField.cs
- ObjectDataSourceView.cs
- CodeCommentStatementCollection.cs
- Part.cs
- HandlerElementCollection.cs
- WmlValidationSummaryAdapter.cs
- HttpDictionary.cs
- EdmToObjectNamespaceMap.cs
- _HelperAsyncResults.cs
- ZipIORawDataFileBlock.cs
- UserUseLicenseDictionaryLoader.cs
- EndOfStreamException.cs
- CategoryGridEntry.cs
- CodeBlockBuilder.cs
- ToolStripComboBox.cs
- CustomCategoryAttribute.cs
- ToolboxItemCollection.cs
- TransformedBitmap.cs
- SubMenuStyleCollection.cs
- SecurityCapabilities.cs
- HttpsHostedTransportConfiguration.cs
- QEncodedStream.cs
- IDReferencePropertyAttribute.cs
- StateDesigner.LayoutSelectionGlyph.cs
- COM2Enum.cs
- ServiceHttpHandlerFactory.cs
- FieldNameLookup.cs
- ObjectAnimationUsingKeyFrames.cs
- BaseParagraph.cs
- mediapermission.cs
- WebBrowsableAttribute.cs
- X509PeerCertificateAuthentication.cs
- LockedHandleGlyph.cs
- parserscommon.cs
- SweepDirectionValidation.cs
- XmlDataCollection.cs
- HttpClientCertificate.cs
- MemberInfoSerializationHolder.cs
- ImageList.cs
- LogArchiveSnapshot.cs
- TransformationRules.cs
- KeyProperty.cs
- HtmlInputControl.cs
- ScriptControlDescriptor.cs
- Timer.cs
- WebCategoryAttribute.cs