Code:
/ FX-1434 / FX-1434 / 1.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
- Encoder.cs
- StylusOverProperty.cs
- RadioButtonList.cs
- AppendHelper.cs
- BuildManager.cs
- FileDataSourceCache.cs
- EntityTypeEmitter.cs
- Tracking.cs
- MailMessage.cs
- PingOptions.cs
- QilInvoke.cs
- Int32Converter.cs
- EmbossBitmapEffect.cs
- HMACMD5.cs
- CompilerInfo.cs
- GeneralTransform3D.cs
- WhiteSpaceTrimStringConverter.cs
- BaseComponentEditor.cs
- SimpleNameService.cs
- ToolStripGripRenderEventArgs.cs
- InkSerializer.cs
- WCFBuildProvider.cs
- CompilationSection.cs
- DayRenderEvent.cs
- EmptyStringExpandableObjectConverter.cs
- GatewayDefinition.cs
- Parallel.cs
- CompilationRelaxations.cs
- SqlCommandBuilder.cs
- CompilationRelaxations.cs
- printdlgexmarshaler.cs
- SqlPersistenceProviderFactory.cs
- SessionEndingEventArgs.cs
- AppDomain.cs
- LambdaSerializationException.cs
- QueryStatement.cs
- DecoratedNameAttribute.cs
- UserCancellationException.cs
- NavigationExpr.cs
- CodeDesigner.cs
- ArcSegment.cs
- TemplatedAdorner.cs
- RedirectionProxy.cs
- SqlExpressionNullability.cs
- DbModificationCommandTree.cs
- XmlSchemaIdentityConstraint.cs
- ServerValidateEventArgs.cs
- CustomSignedXml.cs
- DockAndAnchorLayout.cs
- DragEvent.cs
- Delegate.cs
- DrawingBrush.cs
- SelectionPattern.cs
- DelegatingHeader.cs
- DataGridViewCellToolTipTextNeededEventArgs.cs
- CommonGetThemePartSize.cs
- indexingfiltermarshaler.cs
- DataGridViewIntLinkedList.cs
- ConsoleKeyInfo.cs
- DeclarativeCatalogPart.cs
- XmlSchemaType.cs
- CodeLinePragma.cs
- Wildcard.cs
- WorkflowQueuingService.cs
- XamlTypeMapper.cs
- WindowsToolbar.cs
- TextChangedEventArgs.cs
- EntityTransaction.cs
- XPathAxisIterator.cs
- TextRangeEditTables.cs
- NullRuntimeConfig.cs
- MatrixCamera.cs
- LinkConverter.cs
- AnnotationComponentChooser.cs
- IntSecurity.cs
- GradientBrush.cs
- DataSourceControl.cs
- IODescriptionAttribute.cs
- ErrorWebPart.cs
- DataSvcMapFileSerializer.cs
- ProcessModule.cs
- DayRenderEvent.cs
- DiscoveryClientRequestChannel.cs
- SqlConnectionHelper.cs
- X509SubjectKeyIdentifierClause.cs
- ExceptionUtil.cs
- AliasedSlot.cs
- LineProperties.cs
- Set.cs
- WebPartAddingEventArgs.cs
- XmlSubtreeReader.cs
- OleDbSchemaGuid.cs
- KeyBinding.cs
- PointConverter.cs
- querybuilder.cs
- DbDataSourceEnumerator.cs
- HttpErrorTraceRecord.cs
- WebPartCatalogAddVerb.cs
- CopyAttributesAction.cs
- Decoder.cs