Я работаю над переписыванием библиотеки, в которой есть несколько существующих клиентов.
Объект, который непосредственно использовался клиентом, изменился на содержащийся объект. Чтобы минимизировать изменения кода в клиентском коде, я пытаюсь добавить вызовы-оболочки для внешнего класса, чтобы клиенты могли продолжать вызывать такие методы, как ..
MachineLearningAgentEntry obj = new MachineLearningAgentEntry();
var type = obj.AgentType;
Если нет методов / полей / свойств оболочки, клиенты должны вызывать, как показано ниже
var type = obj.MachineLearningAgent.AgentType;
public class MachineLearningAgentEntry{
MachineLearningAgent machineLearningAgent; //contained object
public MachineLearningAgent
{
get { return machineLearningAgent; }
}
public string AgentType
{
get { return MachineLearningAgent.AgentType.ToString(); }
}
public string Algorithm
{
get { return machineLearningAgent.Algorithm.ToString(); }
}
}
Есть ли способ автоматического создания методов / полей оболочки и т. Д. Я должен добавить сотни методов оболочки для этого изменения. Есть ли лучший способ сделать это?