我需要在我的抽象基类中做哪些改动,以便在任何情况下只需要实现一个方法而不必同时实现两个方法?我的示例如下:
internal abstract class BaseBar<T> where T : BaseThing
{
protected internal abstract T DataFromXmlElements(IEnumerable<XmlNode> nodes);
protected internal abstract T DataFromXmlElements(IEnumerable<XmlNode> nodes, string[] fieldNames);
}
class FooBarMapper : BaseBar<FooData>
{
protected internal override SforceObjectValueData DataObjectFromXmlElements(IEnumerable<XmlNode> nodes)
{
throw new NotImplementedException();
}
protected internal override FooData DataFromXmlElements(IEnumerable<XmlNode> nodes, string[] fieldNames)
{
FooData o = new FooData
{
bar1 = bar1,
bar2 = bar2
};
return o;
}
}
干杯。
编辑:我知道设计很奇怪/糟糕/愚蠢...我正在处理遗留代码,现在没有时间进行重构。 我正在尝试添加使用字符串数组的第二种方法。