Sto progettando una API configurabile e ho visto alcuni modi per accettare le opzioni dal chiamante.
Uno sta usando un oggetto opzioni in questo modo:
var options = new MyApiConfigurationOptions {
Option1 = true,
Option2 = false
};
var api1 = MyApiFactory.Create(options);
Un altro sta usando una funzione di configurazione:
var api2 = MyApiFactory.Create(o => {
o.Option1 = true;
o.Option2 = false;
});
C'è un approccio migliore / peggiore / diverso rispetto all'altro? C'è qualche differenza o sarebbe bello supportare entrambi in modo che il chiamante possa usare qualsiasi sintassi che preferiscono?