Я хочу передать метод расширения, который возвращает void в качестве параметра, другому методу расширения, который возвращает динамический.
public static void AddTo(this Object entity, Object parent)
{
parent.GetCollectionOf(entity).Add(entity);
}
public static dynamic And(this Object entity, Action method)
{
entity.method(parent);
return entity;
}
Я хотел бы использовать его примерно так:
dynamic parent = MakeNew(parentType);
dynamic entity = MakeNew(type).And(AddTo(parent));
Мне нравится передавать любой метод void в And()
, но все равно возвращать объект, который он расширил.Я надеюсь, что динамический тип возврата не является проблематичным.
Какой синтаксис для такого рода вещей?