вот пример такого класса:
sealed class UnitManager : Actor
{
// ...
[MessageHandler]
private void OnConnected(UnitConnected msg)
{
// ...
}
[MessageHandler]
private void OnDisconnected(UnitDisconnected msg)
{
// ...
}
// далее идет код, от которого хотелось бы избавиться, так как эта информация уже содержится в предыдущих методах (по типу параметра msg)
public void Post(UnitConnected msg)
{
this.PostUnknownType(msg);
}
public void Post(UnitDisconnected msg)
{
this.PostUnknownType(msg); // PostUnknownType - protected метод в базовом классе Actor
}
}
Видите дублирование кода? Для каждого MessageHandler мне приходится указывать метод Post, причем содержимое таких методов одинаковое.
Как добиться того, чтобы в самом классе UnitManager не было этих методов Post?