Utilizzando katana, perché il avvio classe non dovrebbe implementare una rispettiva interfaccia, come ad esempio:Perché la classe di avvio richiesta non deve implementare un'interfaccia appropriata, come IStartup?
interface IStartup
{
void Configuration(IAppBuilder app);
}
public class MyStartup : IStartup
{
public void Configuration(IAppBuilder app)
{
...
}
}
penso che potrebbe essere molto più intuitivo per gli sviluppatori per capire che cosa dovrebbero fornire con il metodo WebApp.Start<T>
come argomento T invece di indovinare e alla ricerca di esempi, dovrebbe essere più esplicito:
public void Start<T>() where T : IStartup
Esiste sempre più di una classe di avvio? Non è il metodo con cui stai implementando lo stesso? –
@RobertHarvey sì, potrebbe essere più di 1 classe di avvio, ad esempio, quando eseguo il test delle unità e ho bisogno di un server fittizio. –
@RobertHarvey Se si esegue il seguente codice 'WebApp.Start', come è possibile capire quale dovrebbe essere il 'T' richiesto senza consultare documenti ed esempi? –