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
- StyleCollection.cs
- TreeNode.cs
- LassoSelectionBehavior.cs
- PermissionSet.cs
- AssemblyHash.cs
- XmlCharCheckingWriter.cs
- ObjectIDGenerator.cs
- ExtractorMetadata.cs
- ModelMemberCollection.cs
- BamlRecords.cs
- IgnoreSection.cs
- TiffBitmapDecoder.cs
- CustomPopupPlacement.cs
- XmlTextReaderImplHelpers.cs
- WebPart.cs
- path.cs
- MenuItemBindingCollection.cs
- ISAPIApplicationHost.cs
- TextViewElement.cs
- Camera.cs
- BinHexEncoder.cs
- GraphicsPath.cs
- BehaviorEditorPart.cs
- AsymmetricKeyExchangeDeformatter.cs
- LongMinMaxAggregationOperator.cs
- arabicshape.cs
- ToolZone.cs
- SqlNamer.cs
- COM2FontConverter.cs
- MultipartContentParser.cs
- DisplayClaim.cs
- PathNode.cs
- WorkflowDurableInstance.cs
- LinkUtilities.cs
- PackageStore.cs
- X509ChainElement.cs
- TableChangeProcessor.cs
- HtmlInputControl.cs
- CatalogPartChrome.cs
- FrameworkContextData.cs
- EntityDataSourceColumn.cs
- TriggerCollection.cs
- FlagPanel.cs
- HtmlTable.cs
- UdpDiscoveryEndpointElement.cs
- ContextMarshalException.cs
- ContainerParagraph.cs
- SafeCryptoHandles.cs
- UnSafeCharBuffer.cs
- COM2AboutBoxPropertyDescriptor.cs
- AutoSizeToolBoxItem.cs
- StaticSiteMapProvider.cs
- _Connection.cs
- InvokeMethodActivityDesigner.cs
- XsltSettings.cs
- XamlPathDataSerializer.cs
- UnionExpr.cs
- DocumentSchemaValidator.cs
- HtmlShim.cs
- ExceptionHandler.cs
- XmlSchemaGroupRef.cs
- HierarchicalDataTemplate.cs
- SafeNativeMethodsMilCoreApi.cs
- ClockGroup.cs
- MultiSelector.cs
- WmpBitmapDecoder.cs
- DataList.cs
- SiteOfOriginPart.cs
- TCPClient.cs
- ToolConsole.cs
- ExceptionHandlers.cs
- TableItemStyle.cs
- ProtocolElementCollection.cs
- IISMapPath.cs
- RuleElement.cs
- JsonFaultDetail.cs
- XmlReader.cs
- CodeActivityMetadata.cs
- ToolStripDropDownItem.cs
- BrowsableAttribute.cs
- Stylesheet.cs
- DataGridViewCell.cs
- GraphicsState.cs
- ListManagerBindingsCollection.cs
- WebBaseEventKeyComparer.cs
- SortKey.cs
- unitconverter.cs
- BehaviorEditorPart.cs
- DnsPermission.cs
- PerformanceCountersElement.cs
- TraceSection.cs
- DiscreteKeyFrames.cs
- ColorTransformHelper.cs
- SubqueryRules.cs
- CodeSnippetExpression.cs
- NumberSubstitution.cs
- DBSchemaTable.cs
- MsmqHostedTransportConfiguration.cs
- Font.cs
- TextElementCollection.cs