System.Web.UI.DataSourceCacheDurationConverter.ConvertTo C# (CSharp) Method

ConvertTo() public method

public ConvertTo ( ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType ) : object
context ITypeDescriptorContext
culture System.Globalization.CultureInfo
value object
destinationType Type
return object
		public override object ConvertTo (ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
		{
			if (destinationType == typeof (string)) {
				if (value == null)
					return String.Empty;
				
				if (value is int && (int)value == 0)
					return "Infinite";
			}
			
			return base.ConvertTo (context, culture, value, destinationType);
		}

Usage Example

		public void ConvertTo ()
		{
			var cvt = new DataSourceCacheDurationConverter ();
			Assert.AreEqual ("Infinite", cvt.ConvertTo (null, null, 0, typeof (string)), "#A1-1");
			Assert.AreEqual (0, cvt.ConvertTo (null, null, 0, typeof (int)), "#A1-2");
			Assert.AreEqual (0.0f, cvt.ConvertTo (null, null, 0, typeof (float)), "#A1-3");
			Assert.AreEqual (String.Empty, cvt.ConvertTo (null, null, null, typeof (string)), "#A1-4");
			Assert.AreEqual ("10", cvt.ConvertTo (null, null, 10, typeof (string)), "#A1-5");
		}