У меня есть некоторый код в конструкторе объекта, аналогичном
delegate DataSet MyInvoker;
public MyObject(Param1 p1)
{
// property sets here
// ...
BeginMyAsyncMethod();
}
public void BeginMyAsyncMethod()
{
// set some properties
// ...
MyInvoker inv = new MyInvoker(SomeBeginMethod);
inv.BeginInvoke(new AsyncCallback(SomeEndMethod), null);
}
Мои вопросы:
- Это обычно считается плохой практикой?
- Будет ли лучше (или хорошей) практикой определять метод начала в моем классе, который пользователь будет вызывать для выполнения асинхронного действия?
Этот ответ дает мне впечатление, что оставить его пользователю - это плохая практика, хотя я говорю конкретно о запуске async-методов в конструкторе, а не о правильной конструкции объекта.