如何创建一个通用类,允许具有构造函数(使用一个字符串参数)并实现ToString和以下两个函数的类型。
注意: ConvertBase是FileHelpers csv读取器库中的一个抽象类。我已经有了与csv字段对应的类,不想创建继承ConvertBase的单独类以便与FileHelpres库一起使用。
class Convert<T>:ConverterBase
where T:new()
{
public override object StringToField(string from)
{
try
{
return new T(from);
}
catch (ArgumentException exception)
{
ThrowConvertException(from, exception.Message);
return null;
}
}
public override string FieldToString(object from)
{
return from.ToString();
}
}
注意: ConvertBase是FileHelpers csv读取器库中的一个抽象类。我已经有了与csv字段对应的类,不想创建继承ConvertBase的单独类以便与FileHelpres库一起使用。
public delegate TResult Func<out TResult>()
。 - Daniel HilgarthFunc<>
并使用旧的C#委托语法。我在我的答案中更新了一个示例。 - JaredPar