TimeSpanMinutesConverter 类
定义
转换以分钟表示的时间跨度。Converts a time span expressed in minutes.
public ref class TimeSpanMinutesConverter : System::Configuration::ConfigurationConverterBase
public class TimeSpanMinutesConverter : System.Configuration.ConfigurationConverterBase
type TimeSpanMinutesConverter = class
inherit ConfigurationConverterBase
Public Class TimeSpanMinutesConverter
Inherits ConfigurationConverterBase
- 继承
- 派生
示例
下面的代码示例演示如何定义自定义 TimeSpanMinutesConverter 类型。The following code example shows how to define a custom TimeSpanMinutesConverter type.
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Globalization;
using System.ComponentModel;
public sealed class CustomTimeSpanMinutesConverter :
ConfigurationConverterBase
{
internal bool ValidateType(object value,
Type expected)
{
bool result;
if ((value != null) &&
(value.GetType() != expected))
result = false;
else
result = true;
return result;
}
public override bool CanConvertTo(
ITypeDescriptorContext ctx, Type type)
{
return (type == typeof(string));
}
public override bool CanConvertFrom(
ITypeDescriptorContext ctx, Type type)
{
return (type == typeof(string));
}
public override object ConvertTo(
ITypeDescriptorContext ctx, CultureInfo ci,
object value, Type type)
{
ValidateType(value, typeof(TimeSpan));
long data = (long)(((TimeSpan)value).TotalMinutes);
return data.ToString(CultureInfo.InvariantCulture);
}
public override object ConvertFrom(
ITypeDescriptorContext ctx, CultureInfo ci, object data)
{
long min = long.Parse((string)data,
CultureInfo.InvariantCulture);
return TimeSpan.FromMinutes((double)min);
}
}
Imports System.Collections.Generic
Imports System.Text
Imports System.Configuration
Imports System.Globalization
Imports System.ComponentModel
NotInheritable Public Class CustomTimeSpanMinutesConverter
Inherits ConfigurationConverterBase
Friend Function ValidateType(ByVal value As Object, _
ByVal expected As Type) As Boolean
Dim result As Boolean
If Not (value Is Nothing) _
AndAlso value.ToString() <> expected.ToString() Then
result = False
Else
result = True
End If
Return result
End Function 'ValidateType
Public Overrides Function CanConvertTo( _
ByVal ctx As ITypeDescriptorContext, _
ByVal type As Type) As Boolean
Return (type.ToString() = GetType(String).ToString())
End Function 'CanConvertTo
Public Overrides Function CanConvertFrom( _
ByVal ctx As ITypeDescriptorContext, _
ByVal type As Type) As Boolean
Return (type.ToString() = GetType(String).ToString())
End Function 'CanConvertFrom
Public Overrides Function ConvertTo( _
ByVal ctx As ITypeDescriptorContext, _
ByVal ci As CultureInfo, ByVal value As Object, _
ByVal type As Type) As Object
ValidateType(value, GetType(TimeSpan))
Dim data As Long = _
Fix(CType(value, TimeSpan).TotalMinutes)
Return data.ToString(CultureInfo.InvariantCulture)
End Function 'ConvertTo
Public Overrides Function ConvertFrom( _
ByVal ctx As ITypeDescriptorContext, _
ByVal ci As CultureInfo, ByVal data As Object) As Object
Dim min As Long = _
Long.Parse(CStr(data), CultureInfo.InvariantCulture)
Return TimeSpan.FromMinutes(System.Convert.ToDouble(min))
End Function 'ConvertFrom
End Class
下面是前面的示例使用的配置摘录。The following is a configuration excerpt used by the previous example.
<configuration>
<configSections>
<section name="CustomSection"
type="Samples.AspNet.CustomSection,
ConfigurationConverters,
Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null"
allowDefinition="Everywhere"
allowExeDefinition="MachineToApplication"
restartOnExternalChanges="true" />
</configSections>
<CustomSection fileName="default.txt" maxIdleTime="90"
timeDelay="infinite" cdStr="str0, str1" permission="Read"
maxUsers="Infinite"/>
</configuration>
注解
与所有其他配置转换器类型一样,此类型将在配置文件中找到的字符串转换为相关的强类型属性。This type, like all the other configuration converter types, converts strings found in the configuration file to and from the related strongly typed properties.
具体而言, TimeSpanMinutesConverter 将 String 分配给配置属性的分钟数转换为 TimeSpan 分钟,反之亦然。In particular, the TimeSpanMinutesConverter converts String minutes, assigned to a configuration property, to TimeSpan minutes and vice versa.
TimeSpanMinutesConverter保留表示分钟数的类型的值 long
。The TimeSpanMinutesConverter persists values of type long
representing a number of minutes.
构造函数
TimeSpanMinutesConverter() |
初始化 TimeSpanMinutesConverter 类的新实例。Initializes a new instance of the TimeSpanMinutesConverter class. |
方法
CanConvertFrom(ITypeDescriptorContext, Type) |
确定是否允许此转换。Determines whether the conversion is allowed. (继承自 ConfigurationConverterBase) |
CanConvertFrom(Type) |
返回该转换器是否可以将给定类型的对象转换为此转换器的类型。Returns whether this converter can convert an object of the given type to the type of this converter. (继承自 TypeConverter) |
CanConvertTo(ITypeDescriptorContext, Type) |
确定是否允许此转换。Determines whether the conversion is allowed. (继承自 ConfigurationConverterBase) |
CanConvertTo(Type) |
返回此转换器是否可将该对象转换为指定的类型。Returns whether this converter can convert the object to the specified type. (继承自 TypeConverter) |
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) | |
ConvertFrom(Object) |
将给定值转换为此转换器的类型。Converts the given value to the type of this converter. (继承自 TypeConverter) |
ConvertFromInvariantString(ITypeDescriptorContext, String) |
使用不变区域性和指定上下文将给定字符串转换为此转换器的类型。Converts the given string to the type of this converter, using the invariant culture and the specified context. (继承自 TypeConverter) |
ConvertFromInvariantString(String) |
使用不变区域性将给定字符串转换为此转换器的类型。Converts the given string to the type of this converter, using the invariant culture. (继承自 TypeConverter) |
ConvertFromString(ITypeDescriptorContext, CultureInfo, String) |
使用指定的上下文和区域性信息将给定的文本转换为对象。Converts the given text to an object, using the specified context and culture information. (继承自 TypeConverter) |
ConvertFromString(ITypeDescriptorContext, String) |
使用指定的上下文将给定的文本转换为对象。Converts the given text to an object, using the specified context. (继承自 TypeConverter) |
ConvertFromString(String) |
将指定文本转换为对象。Converts the specified text to an object. (继承自 TypeConverter) |
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) | |
ConvertTo(Object, Type) |
使用参数将给定的值对象转换为指定的类型。Converts the given value object to the specified type, using the arguments. (继承自 TypeConverter) |
ConvertToInvariantString(ITypeDescriptorContext, Object) |
使用指定的上下文将指定的值转换为区域性不变的字符串表示形式。Converts the specified value to a culture-invariant string representation, using the specified context. (继承自 TypeConverter) |
ConvertToInvariantString(Object) |
将指定值转换为区域性不变的字符串表示形式。Converts the specified value to a culture-invariant string representation. (继承自 TypeConverter) |
ConvertToString(ITypeDescriptorContext, CultureInfo, Object) |
使用指定的上下文和区域性信息将给定的值转换为字符串表示形式。Converts the given value to a string representation, using the specified context and culture information. (继承自 TypeConverter) |
ConvertToString(ITypeDescriptorContext, Object) |
使用给定的上下文将给定的值转换为字符串表示形式。Converts the given value to a string representation, using the given context. (继承自 TypeConverter) |
ConvertToString(Object) |
将指定值转换为字符串表示形式。Converts the specified value to a string representation. (继承自 TypeConverter) |
CreateInstance(IDictionary) |
在给定 Object 的一组属性值的情况下重新创建该对象。Re-creates an Object given a set of property values for the object. (继承自 TypeConverter) |
CreateInstance(ITypeDescriptorContext, IDictionary) |
给定该对象的一组属性值,使用指定上下文创建与此 TypeConverter 相关联的类型的实例。Creates an instance of the type that this TypeConverter is associated with, using the specified context, given a set of property values for the object. (继承自 TypeConverter) |
Equals(Object) |
确定指定对象是否等于当前对象。Determines whether the specified object is equal to the current object. (继承自 Object) |
GetConvertFromException(Object) |
返回当转换无法执行时所引发的异常。Returns an exception to throw when a conversion cannot be performed. (继承自 TypeConverter) |
GetConvertToException(Object, Type) |
返回当转换无法执行时所引发的异常。Returns an exception to throw when a conversion cannot be performed. (继承自 TypeConverter) |
GetCreateInstanceSupported() |
返回更改此对象的值是否求调用 CreateInstance(IDictionary) 方法来创建新值。Returns whether changing a value on this object requires a call to the CreateInstance(IDictionary) method to create a new value. (继承自 TypeConverter) |
GetCreateInstanceSupported(ITypeDescriptorContext) |
返回一个结果,即更改此对象上的某个值是否需要调用 CreateInstance(IDictionary) 以使用指定的上下文创建新值。Returns whether changing a value on this object requires a call to CreateInstance(IDictionary) to create a new value, using the specified context. (继承自 TypeConverter) |
GetHashCode() |
作为默认哈希函数。Serves as the default hash function. (继承自 Object) |
GetProperties(ITypeDescriptorContext, Object) |
使用指定的上下文返回值参数指定的数组类型的属性的集合。Returns a collection of properties for the type of array specified by the value parameter, using the specified context. (继承自 TypeConverter) |
GetProperties(ITypeDescriptorContext, Object, Attribute[]) |
使用指定的上下文和特性返回由该值参数指定的数组类型的属性集合。Returns a collection of properties for the type of array specified by the value parameter, using the specified context and attributes. (继承自 TypeConverter) |
GetProperties(Object) |
返回由值参数指定的数组类型的属性集合。Returns a collection of properties for the type of array specified by the value parameter. (继承自 TypeConverter) |
GetPropertiesSupported() |
返回此对象是否支持属性。Returns whether this object supports properties. (继承自 TypeConverter) |
GetPropertiesSupported(ITypeDescriptorContext) |
通过使用指定的上下文,返回此对象是否支持属性。Returns whether this object supports properties, using the specified context. (继承自 TypeConverter) |
GetStandardValues() |
从默认的上下文返回此类型转换器设计用于的数据类型的标准值集合。Returns a collection of standard values from the default context for the data type this type converter is designed for. (继承自 TypeConverter) |
GetStandardValues(ITypeDescriptorContext) |
当与格式上下文一起提供时,返回此类型转换器设计用于的数据类型的标准值集合。Returns a collection of standard values for the data type this type converter is designed for when provided with a format context. (继承自 TypeConverter) |
GetStandardValuesExclusive() |
返回从 GetStandardValues() 返回的标准值的集合是否为独占列表。Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list. (继承自 TypeConverter) |
GetStandardValuesExclusive(ITypeDescriptorContext) |
使用指定的上下文返回从 GetStandardValues() 返回的标准值的集合是否为可能值的独占列表。Returns whether the collection of standard values returned from GetStandardValues() is an exclusive list of possible values, using the specified context. (继承自 TypeConverter) |
GetStandardValuesSupported() |
返回此对象是否支持可以从列表中选取的标准值集。Returns whether this object supports a standard set of values that can be picked from a list. (继承自 TypeConverter) |
GetStandardValuesSupported(ITypeDescriptorContext) |
使用指定的上下文返回此对象是否支持可以从列表中选取的标准值集。Returns whether this object supports a standard set of values that can be picked from a list, using the specified context. (继承自 TypeConverter) |
GetType() |
获取当前实例的 Type。Gets the Type of the current instance. (继承自 Object) |
IsValid(ITypeDescriptorContext, Object) |
返回给定的值对象是否对此类型和对指定的上下文有效。Returns whether the given value object is valid for this type and for the specified context. (继承自 TypeConverter) |
IsValid(Object) |
返回给定值对象对于此类型是否有效。Returns whether the given value object is valid for this type. (继承自 TypeConverter) |
MemberwiseClone() |
创建当前 Object 的浅表副本。Creates a shallow copy of the current Object. (继承自 Object) |
SortProperties(PropertyDescriptorCollection, String[]) |
对属性的集合进行排序。Sorts a collection of properties. (继承自 TypeConverter) |
ToString() |
返回表示当前对象的字符串。Returns a string that represents the current object. (继承自 Object) |