Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / TimeSpanOrInfiniteConverter.cs / 1305376 / TimeSpanOrInfiniteConverter.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Runtime
{
using System;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.ComponentModel;
[SuppressMessage(FxCop.Category.Xaml, FxCop.Rule.TypeConvertersMustBePublic,
Justification = "Only used by discovery, which doesn't support PT")]
class TimeSpanOrInfiniteConverter : TimeSpanConverter
{
public override object ConvertTo(ITypeDescriptorContext context, CultureInfo cultureInfo, object value, Type type)
{
if (value == null)
{
throw Fx.Exception.ArgumentNull("value");
}
if (!(value is TimeSpan))
{
throw Fx.Exception.Argument("value", SRCore.IncompatibleArgumentType(typeof(TimeSpan), value.GetType()));
}
if ((TimeSpan)value == TimeSpan.MaxValue)
{
return "Infinite";
}
else
{
return base.ConvertTo(context, cultureInfo, value, type);
}
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo cultureInfo, object data)
{
if (string.Equals((string)data, "infinite", StringComparison.OrdinalIgnoreCase))
{
return TimeSpan.MaxValue;
}
else
{
return base.ConvertFrom(context, cultureInfo, data);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Runtime
{
using System;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.ComponentModel;
[SuppressMessage(FxCop.Category.Xaml, FxCop.Rule.TypeConvertersMustBePublic,
Justification = "Only used by discovery, which doesn't support PT")]
class TimeSpanOrInfiniteConverter : TimeSpanConverter
{
public override object ConvertTo(ITypeDescriptorContext context, CultureInfo cultureInfo, object value, Type type)
{
if (value == null)
{
throw Fx.Exception.ArgumentNull("value");
}
if (!(value is TimeSpan))
{
throw Fx.Exception.Argument("value", SRCore.IncompatibleArgumentType(typeof(TimeSpan), value.GetType()));
}
if ((TimeSpan)value == TimeSpan.MaxValue)
{
return "Infinite";
}
else
{
return base.ConvertTo(context, cultureInfo, value, type);
}
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo cultureInfo, object data)
{
if (string.Equals((string)data, "infinite", StringComparison.OrdinalIgnoreCase))
{
return TimeSpan.MaxValue;
}
else
{
return base.ConvertFrom(context, cultureInfo, data);
}
}
}
}
// 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
- PanelStyle.cs
- ListBindingConverter.cs
- XmlWriter.cs
- SqlErrorCollection.cs
- NotConverter.cs
- webclient.cs
- XmlChildEnumerator.cs
- ScrollViewer.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- DataGridCellsPresenter.cs
- XmlMapping.cs
- IISMapPath.cs
- GrammarBuilderPhrase.cs
- XhtmlBasicCommandAdapter.cs
- FloaterParagraph.cs
- WpfWebRequestHelper.cs
- ImageInfo.cs
- DataPagerFieldCommandEventArgs.cs
- DataControlCommands.cs
- WebAdminConfigurationHelper.cs
- SoapAttributeOverrides.cs
- SrgsText.cs
- DragDeltaEventArgs.cs
- HttpWebResponse.cs
- SystemFonts.cs
- StylusEventArgs.cs
- ParentQuery.cs
- AxisAngleRotation3D.cs
- StringReader.cs
- SqlBinder.cs
- CredentialCache.cs
- RTLAwareMessageBox.cs
- ProviderSettingsCollection.cs
- AttributeEmitter.cs
- ListControlConvertEventArgs.cs
- EdgeModeValidation.cs
- ReadOnlyCollection.cs
- XMLSyntaxException.cs
- ApplicationId.cs
- PointLight.cs
- XmlUnspecifiedAttribute.cs
- VisualStyleInformation.cs
- BuildProvidersCompiler.cs
- DeclaredTypeElementCollection.cs
- ThrowHelper.cs
- BounceEase.cs
- ClrProviderManifest.cs
- XmlWriterSettings.cs
- UIElement3D.cs
- ReverseQueryOperator.cs
- ImageFormatConverter.cs
- TypeUtil.cs
- CompareValidator.cs
- SafePEFileHandle.cs
- GetBrowserTokenRequest.cs
- StagingAreaInputItem.cs
- ApplicationActivator.cs
- LoginAutoFormat.cs
- VirtualPath.cs
- DictionaryBase.cs
- DataSpaceManager.cs
- ContainerTracking.cs
- FileDialogCustomPlacesCollection.cs
- RequestQueryProcessor.cs
- EventHandlersDesigner.cs
- SystemSounds.cs
- ConstraintEnumerator.cs
- StrongNameKeyPair.cs
- MetadataPropertyCollection.cs
- CqlQuery.cs
- SqlDataSourceQuery.cs
- DiscardableAttribute.cs
- ListItemParagraph.cs
- CellIdBoolean.cs
- ScriptControlManager.cs
- SymmetricKeyWrap.cs
- IUnknownConstantAttribute.cs
- RuntimeConfig.cs
- ScriptingSectionGroup.cs
- GeneratedCodeAttribute.cs
- DataColumn.cs
- DeviceContext.cs
- DataGridPagerStyle.cs
- _Semaphore.cs
- StringStorage.cs
- GridView.cs
- FrameworkContentElement.cs
- PackageDigitalSignature.cs
- StorageComplexPropertyMapping.cs
- TimeSpan.cs
- XamlPointCollectionSerializer.cs
- BaseValidator.cs
- ColumnMap.cs
- MimeTypePropertyAttribute.cs
- Ipv6Element.cs
- XmlReaderSettings.cs
- PlanCompiler.cs
- WebPartCollection.cs
- HttpCacheVaryByContentEncodings.cs
- ObjectConverter.cs