Genéricos de C #: si T es un tipo de retorno, ¿también puede ser anulado? ¿Cómo puedo combinar estas interfaces juntas?

Tengo la siguiente interfaz que devuelve el parámetro genérico de tipo T utilizando una devolución de llamada ...

public interface IDoWork<T>
{
    T DoWork();
}

sin embargo, también tengo la siguiente interfaz, pero no invocará una devolución de llamada ya que devuelve void.

public interface IDoWork
{
    void DoWork();
}

¿Puedo combinar estas dos interfaces y usar la lógica de tiempo de ejecución para determinar la diferencia? ¿Cómo puedo hacer eso?

Respuestas a la pregunta(2)

Su respuesta a la pregunta