这些关键词有很多问题;我筛选了前30个左右然后放弃了。
我有这样的接口:
public interface IColumnRule
{
int Length { get; set; }
string Name { get; set; }
object Parse(string toParse);
int Position { get; set; }
Type Type { get; }
}
public interface IColumnRule<T> : IColumnRule
{
ColumnRule<T>.RuleFluentInterface<T> Configure { get; }
new T Parse(string rowdata);
Func<string, T> ParsingFunction { get; set; }
}
...这个想法是,一个人将实现IColumnRule<T>
创建一个强类型的列解析器,利用Func<string, T>
.
问题是,我将这些IColumnRule<T>
混凝土存放在一个IList<IColumnRule>
容器中。有多种类型IColumnRule<T>
,每种都在不同的类型上实现。当我Parse
在接口上调用方法时IColumnRule
,我期望new Parse(string)
调用子类的方法,但Parse
实际调用的是基类。
如何从使用接口的T Parse(string)
集合中调用子类泛型方法......或者这是不可能的?IColumnRule
object Parse(string)