Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Data / System / Data / DefaultValueTypeConverter.cs / 1 / DefaultValueTypeConverter.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
// [....]
// [....]
//-----------------------------------------------------------------------------
/*
*/
namespace System.Data {
using System.ComponentModel;
using System.ComponentModel.Design.Serialization;
using System.Diagnostics;
using System.Globalization;
///
/// Provides a type
/// converter that can be used to populate a list box with available types.
///
internal sealed class DefaultValueTypeConverter : StringConverter {
private static string nullString = "";
private static string dbNullString = "";
// converter classes should have public ctor
public DefaultValueTypeConverter() {
}
public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) {
if (destinationType == null) {
throw new ArgumentNullException("destinationType");
}
if (destinationType == typeof(string)) {
if (value == null) {
return nullString;
}
else if (value == DBNull.Value) {
return dbNullString;
}
}
return base.ConvertTo(context, culture, value, destinationType);
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) {
if (value != null && value.GetType() == typeof(string)) {
string strValue = (string)value;
if (string.Compare(strValue, nullString, StringComparison.OrdinalIgnoreCase) == 0)
return null;
else if (string.Compare(strValue, dbNullString, StringComparison.OrdinalIgnoreCase) == 0)
return DBNull.Value;
}
return base.ConvertFrom(context, culture, value);
}
}
}
// 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
- XmlSchemaException.cs
- BufferedGraphics.cs
- SolidColorBrush.cs
- DoubleConverter.cs
- WebPartsSection.cs
- WindowsIPAddress.cs
- Wildcard.cs
- PkcsMisc.cs
- KeyPressEvent.cs
- TreeNodeCollectionEditor.cs
- NoneExcludedImageIndexConverter.cs
- GeometryHitTestResult.cs
- XmlWrappingReader.cs
- MD5.cs
- ImageSourceTypeConverter.cs
- SingleSelectRootGridEntry.cs
- BinaryWriter.cs
- OdbcCommand.cs
- ValidationRule.cs
- ByteConverter.cs
- Authorization.cs
- CommonGetThemePartSize.cs
- LocalBuilder.cs
- LinkedResource.cs
- StorageMappingItemLoader.cs
- TextElement.cs
- LineBreakRecord.cs
- UInt16Converter.cs
- Menu.cs
- MetadataWorkspace.cs
- BuildProvider.cs
- SelectionItemProviderWrapper.cs
- OwnerDrawPropertyBag.cs
- CompModSwitches.cs
- CreateParams.cs
- Image.cs
- DefaultProfileManager.cs
- DataGridTablesFactory.cs
- LocalClientSecuritySettingsElement.cs
- XmlSchemaGroup.cs
- UniformGrid.cs
- ComponentResourceKey.cs
- UrlMappingsSection.cs
- ImportContext.cs
- CodeTypeReference.cs
- ToolBarButtonClickEvent.cs
- ValidatingReaderNodeData.cs
- TdsRecordBufferSetter.cs
- ChangesetResponse.cs
- BitmapEffect.cs
- DataRowComparer.cs
- DbMetaDataCollectionNames.cs
- CompressionTransform.cs
- DataServiceHostFactory.cs
- CopyCodeAction.cs
- SemanticAnalyzer.cs
- InfoCardTraceRecord.cs
- TextSerializer.cs
- TextSchema.cs
- QueryableDataSource.cs
- SAPICategories.cs
- WindowsSolidBrush.cs
- MappingException.cs
- ConvertEvent.cs
- ContentValidator.cs
- EdmSchemaAttribute.cs
- KoreanCalendar.cs
- ZipPackage.cs
- CodeTypeDeclarationCollection.cs
- Underline.cs
- MemberHolder.cs
- SqlGenericUtil.cs
- SignedXmlDebugLog.cs
- Root.cs
- UpdatePanelTrigger.cs
- FlowDocumentPage.cs
- Int32AnimationBase.cs
- CriticalFinalizerObject.cs
- PeerUnsafeNativeMethods.cs
- CodeGen.cs
- CodeDirectionExpression.cs
- DiagnosticStrings.cs
- ColorMap.cs
- XmlSchemaSimpleContentRestriction.cs
- CorrelationService.cs
- FontWeights.cs
- MemberDomainMap.cs
- TreeView.cs
- OrderablePartitioner.cs
- TextPenaltyModule.cs
- DataGridViewRowCancelEventArgs.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- SerialPinChanges.cs
- FrameSecurityDescriptor.cs
- SqlBooleanizer.cs
- CodeArrayCreateExpression.cs
- PropertyDescriptorCollection.cs
- Popup.cs
- DataGridRow.cs
- EventLogTraceListener.cs