Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / System / data / design / DataDesignUtil.cs / 1 / DataDesignUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All Rights Reserved. // Information Contained Herein is Proprietary and Confidential. // //----------------------------------------------------------------------------- /* */ namespace System.Data.Design { using System; using System.Text; using System.Data; using System.Data.Common; using System.Data.OleDb; using System.Data.SqlClient; using System.Collections; using System.Diagnostics; using System.Globalization; using System.Windows.Forms; using System.ComponentModel; using System.ComponentModel.Design; ////// This class provides the data class designer specific utilities /// internal sealed class DataDesignUtil { internal static string DataSetClassName = typeof(DataSet).ToString(); // private constructor to avoid class being instantiated. private DataDesignUtil() { } internal enum MappingDirection { SourceToDataSet, DataSetToSource } internal static string[] MapColumnNames( DataColumnMappingCollection mappingCollection, string[] names, MappingDirection direction ) { Debug.Assert( mappingCollection != null ); Debug.Assert( names != null ); if( mappingCollection == null || names == null ) { return new string[] {}; } ArrayList result = new ArrayList(); string mappedName; DataColumnMapping mapping; foreach( string columnName in names ) { try { if( direction == MappingDirection.DataSetToSource ) { mapping = mappingCollection.GetByDataSetColumn( columnName ); mappedName = mapping.SourceColumn; } else { mapping = mappingCollection[columnName]; mappedName = mapping.DataSetColumn; } } catch( System.IndexOutOfRangeException ) { mappedName = columnName; } Debug.Assert( StringUtil.NotEmptyAfterTrim(mappedName) ); result.Add( mappedName ); } return (string[]) result.ToArray( typeof(string) ); } // CopyColumn -- Copy column members from src to dest. public static void CopyColumn(DataColumn srcColumn, DataColumn destColumn){ destColumn.AllowDBNull = srcColumn.AllowDBNull; destColumn.AutoIncrement = srcColumn.AutoIncrement; destColumn.AutoIncrementSeed = srcColumn.AutoIncrementSeed; destColumn.AutoIncrementStep = srcColumn.AutoIncrementStep; destColumn.Caption = srcColumn.Caption; destColumn.ColumnMapping = srcColumn.ColumnMapping; destColumn.ColumnName = srcColumn.ColumnName; destColumn.DataType = srcColumn.DataType; destColumn.DefaultValue = srcColumn.DefaultValue; destColumn.Expression = srcColumn.Expression; destColumn.MaxLength = srcColumn.MaxLength; destColumn.Prefix = srcColumn.Prefix; destColumn.ReadOnly = srcColumn.ReadOnly; // Do not touch Unique property - setting Unique to true creates a UniqueConstraint // behind the scenes and we do not want it. } // CloneColumn -- Creates a copy of the given column. public static DataColumn CloneColumn(DataColumn column){ DataColumn newColumn = new DataColumn(); CopyColumn(column, newColumn); return newColumn; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BufferedGraphicsContext.cs
- BuildProviderAppliesToAttribute.cs
- PanelStyle.cs
- DbProviderFactoriesConfigurationHandler.cs
- QueryContinueDragEvent.cs
- SystemPens.cs
- UIElement3DAutomationPeer.cs
- IChannel.cs
- ScriptModule.cs
- InlinedAggregationOperator.cs
- XmlIlGenerator.cs
- MaskInputRejectedEventArgs.cs
- IndexedString.cs
- StorageComplexPropertyMapping.cs
- SignatureToken.cs
- BitmapEffectRenderDataResource.cs
- ValidatorCollection.cs
- DropSourceBehavior.cs
- MatrixValueSerializer.cs
- PathGeometry.cs
- ComponentDispatcher.cs
- HashSet.cs
- HybridDictionary.cs
- TextServicesPropertyRanges.cs
- Variable.cs
- StrokeNodeEnumerator.cs
- PathFigureCollectionConverter.cs
- CallSiteOps.cs
- HighContrastHelper.cs
- DesignerActionPanel.cs
- EdmItemError.cs
- AuthorizationRuleCollection.cs
- SoapReflectionImporter.cs
- XmlAnyElementAttributes.cs
- MailBnfHelper.cs
- AccessDataSourceView.cs
- AtomMaterializerLog.cs
- SchemaElement.cs
- cookiecollection.cs
- DeclarativeCatalogPart.cs
- ValidatingPropertiesEventArgs.cs
- StateDesigner.cs
- TextEmbeddedObject.cs
- TextContainerHelper.cs
- InfoCardTrace.cs
- CompilerGlobalScopeAttribute.cs
- GetPageCompletedEventArgs.cs
- DataGridDetailsPresenterAutomationPeer.cs
- SafeNativeMethods.cs
- DiscardableAttribute.cs
- TaiwanCalendar.cs
- GC.cs
- ArraySet.cs
- RuntimeHelpers.cs
- ArrayHelper.cs
- ProfileProvider.cs
- CharConverter.cs
- MaterialCollection.cs
- DataRelationPropertyDescriptor.cs
- CustomWebEventKey.cs
- DeviceSpecificDesigner.cs
- ParserOptions.cs
- WindowsImpersonationContext.cs
- UriSectionData.cs
- HwndProxyElementProvider.cs
- X509Certificate.cs
- BoundField.cs
- SignatureHelper.cs
- DynamicPropertyReader.cs
- HttpProcessUtility.cs
- XmlUtf8RawTextWriter.cs
- OutputCacheModule.cs
- EmulateRecognizeCompletedEventArgs.cs
- ContentFileHelper.cs
- util.cs
- Nullable.cs
- ExpressionEditorSheet.cs
- DateTimeOffsetStorage.cs
- GridViewHeaderRowPresenter.cs
- FontStyleConverter.cs
- ChildDocumentBlock.cs
- LinkedResourceCollection.cs
- XmlLanguage.cs
- RadioButtonRenderer.cs
- PerformanceCounters.cs
- TableCell.cs
- ValidatingReaderNodeData.cs
- _ShellExpression.cs
- OdbcCommandBuilder.cs
- Panel.cs
- DataTableMapping.cs
- ToolStripStatusLabel.cs
- StylusPlugin.cs
- NetworkInformationPermission.cs
- ConvertersCollection.cs
- SystemIPv6InterfaceProperties.cs
- BitmapEffectDrawingContextState.cs
- DocumentAutomationPeer.cs
- GetWinFXPath.cs
- WebBrowserProgressChangedEventHandler.cs