Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / DataSourceCacheDurationConverter.cs / 1 / DataSourceCacheDurationConverter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Reflection; using System.Security.Permissions; using System.Web.Util; ////// Converts a cache duration such as an integer or the text "Infinite" to a cache duration, where "Infinite" implies zero (0). /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class DataSourceCacheDurationConverter : Int32Converter { private StandardValuesCollection _values; public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (sourceType == typeof(string)) { return true; } else { return base.CanConvertFrom(context, sourceType); } } public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value == null) return null; string stringValue = value as string; if (stringValue != null) { string textValue = stringValue.Trim(); if (textValue.Length == 0) { return 0; } if (String.Equals(textValue, "infinite", StringComparison.OrdinalIgnoreCase)) { return 0; } } return base.ConvertFrom(context, culture, value); } public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (destinationType == typeof(string)) { return true; } else { return base.CanConvertTo(context, destinationType); } } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if ((value != null) && (destinationType == typeof(string)) && ((int)value == 0)) { return "Infinite"; } else { return base.ConvertTo(context, culture, value, destinationType); } } public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { if (_values == null) { object[] values = new object[] { 0 }; _values = new StandardValuesCollection(values); } return _values; } public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return false; } public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return true; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WaveHeader.cs
- ObjectDataSourceDisposingEventArgs.cs
- DbProviderFactories.cs
- BasicDesignerLoader.cs
- HttpChannelHelper.cs
- SiteMapProvider.cs
- GeometryGroup.cs
- HorizontalAlignConverter.cs
- XmlCodeExporter.cs
- TimelineGroup.cs
- UnmanagedMemoryStream.cs
- DataSourceView.cs
- AuthenticationServiceManager.cs
- StringBlob.cs
- DebugInfoGenerator.cs
- CharacterString.cs
- InternalEnumValidator.cs
- ConnectionStringsExpressionBuilder.cs
- ImportContext.cs
- WinInet.cs
- XmlSchemaComplexContentRestriction.cs
- FileLogRecordEnumerator.cs
- TypeSystem.cs
- SecUtil.cs
- ListQueryResults.cs
- ThreadPoolTaskScheduler.cs
- XmlnsCompatibleWithAttribute.cs
- TextBlock.cs
- NotifyParentPropertyAttribute.cs
- Column.cs
- MarkupCompilePass1.cs
- KeyFrames.cs
- ConfigurationManagerHelper.cs
- ToolStripRendererSwitcher.cs
- XmlTextEncoder.cs
- DictionaryChange.cs
- OutputWindow.cs
- IIS7WorkerRequest.cs
- XsdBuildProvider.cs
- ActivityCodeGenerator.cs
- TreeViewAutomationPeer.cs
- TextTreeNode.cs
- Nodes.cs
- LinkUtilities.cs
- ErrorWebPart.cs
- AutomationEvent.cs
- SafeCryptContextHandle.cs
- AttachedPropertyDescriptor.cs
- NameNode.cs
- EntityConnectionStringBuilderItem.cs
- RedistVersionInfo.cs
- SqlCachedBuffer.cs
- InitializingNewItemEventArgs.cs
- CheckPair.cs
- Accessible.cs
- DiscreteKeyFrames.cs
- LinqDataSourceContextData.cs
- SQLConvert.cs
- UnsafeNativeMethods.cs
- InkCanvasFeedbackAdorner.cs
- CodeMemberField.cs
- ProfilePropertySettings.cs
- XmlResolver.cs
- AttributeQuery.cs
- ApplicationManager.cs
- EncoderParameter.cs
- RequiredAttributeAttribute.cs
- File.cs
- DataObjectCopyingEventArgs.cs
- JsonByteArrayDataContract.cs
- SchemaComplexType.cs
- HttpCachePolicyElement.cs
- RequestCacheValidator.cs
- VoiceObjectToken.cs
- DelegatingConfigHost.cs
- SqlWriter.cs
- InputLanguage.cs
- BindToObject.cs
- RotateTransform.cs
- SessionParameter.cs
- BroadcastEventHelper.cs
- Variant.cs
- _TimerThread.cs
- ProcessModelInfo.cs
- ArraySegment.cs
- RegexFCD.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- NotSupportedException.cs
- TriggerCollection.cs
- RoleServiceManager.cs
- BuildManager.cs
- Freezable.cs
- BamlTreeMap.cs
- TileModeValidation.cs
- TagMapCollection.cs
- WindowsListBox.cs
- SelectionEditor.cs
- Soap12ProtocolReflector.cs
- mediaeventshelper.cs
- TypeDefinition.cs