Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / DataSourceCacheDurationConverter.cs / 2 / 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; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ //// 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; } } } // 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
- BinaryWriter.cs
- FrameworkElementAutomationPeer.cs
- EditorPartCollection.cs
- SqlDataSourceCustomCommandPanel.cs
- WindowsGraphicsWrapper.cs
- ModuleBuilder.cs
- WebServiceFault.cs
- WindowsAuthenticationModule.cs
- WindowsImpersonationContext.cs
- FontStyleConverter.cs
- CodeNamespace.cs
- CorrelationHandle.cs
- RequestCacheManager.cs
- Material.cs
- ErrorFormatterPage.cs
- XmlSchemaNotation.cs
- DocumentGridPage.cs
- ClientRuntimeConfig.cs
- _FixedSizeReader.cs
- _ConnectionGroup.cs
- TransformDescriptor.cs
- _TransmitFileOverlappedAsyncResult.cs
- SystemPens.cs
- DropDownButton.cs
- SQLDoubleStorage.cs
- XmlToDatasetMap.cs
- NameValueConfigurationCollection.cs
- Figure.cs
- querybuilder.cs
- CharEnumerator.cs
- ExpressionPrinter.cs
- DateTimeFormatInfoScanner.cs
- EventDescriptor.cs
- XmlSchemaGroupRef.cs
- AsyncOperationContext.cs
- CodeDomConfigurationHandler.cs
- PriorityRange.cs
- GraphicsPath.cs
- AssemblySettingAttributes.cs
- Html32TextWriter.cs
- UInt64Storage.cs
- MediaContextNotificationWindow.cs
- UserNameSecurityTokenProvider.cs
- SafeRightsManagementSessionHandle.cs
- PresentationAppDomainManager.cs
- DependencyStoreSurrogate.cs
- Empty.cs
- Schema.cs
- DecimalConverter.cs
- Section.cs
- TypeUtils.cs
- DecoderBestFitFallback.cs
- Span.cs
- ColorConvertedBitmap.cs
- ISAPIApplicationHost.cs
- GridItem.cs
- Timer.cs
- DataBindEngine.cs
- ZipIOCentralDirectoryFileHeader.cs
- ParameterCollection.cs
- ActivityPreviewDesigner.cs
- ValidationEventArgs.cs
- XPathNavigatorKeyComparer.cs
- TreeWalkHelper.cs
- Model3D.cs
- TypedReference.cs
- XmlNode.cs
- CellTreeSimplifier.cs
- ListItemCollection.cs
- MemoryMappedViewAccessor.cs
- COM2Properties.cs
- EditorOptionAttribute.cs
- RegexInterpreter.cs
- RequestCachePolicy.cs
- DataDocumentXPathNavigator.cs
- XmlSchemaGroup.cs
- SecurityUtils.cs
- LineInfo.cs
- HttpWebResponse.cs
- VectorKeyFrameCollection.cs
- BigInt.cs
- odbcmetadatafactory.cs
- TreeViewDesigner.cs
- ComboBox.cs
- Vertex.cs
- KeyedCollection.cs
- HtmlSelect.cs
- XmlAttributeCollection.cs
- DataBindingExpressionBuilder.cs
- Win32Native.cs
- QilDataSource.cs
- HttpRuntime.cs
- Debugger.cs
- cookiecollection.cs
- TreeViewItem.cs
- ButtonAutomationPeer.cs
- GlobalAllocSafeHandle.cs
- SiteMapNode.cs
- SoapIgnoreAttribute.cs
- NullReferenceException.cs