что мне нужно изменить в моей абстрактной базе, чтобы реализации не должны были реализовывать ОБА методы, когда в любом заданном сценарии нужен только один?Мой пример:
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;
}
}
Приветствия.
edit: Дизайн странный / плохой / глупый Я знаю ... Я работаю с устаревшим кодом, и время не на моей сторонепрямо сейчас для рефакторинга.Я пытаюсь добавить второй метод с массивом строк.