In question circa l'utilità di IoC Container, il mittente vincente ha detto che con un contenitore CIO si può prendere questo:Codice di Cruft. CIO di soccorso
public class UglyCustomer : INotifyPropertyChanged
{
private string _firstName;
public string FirstName
{
get { return _firstName; }
set
{
string oldValue = _firstName;
_firstName = value;
if(oldValue != value)
OnPropertyChanged("FirstName");
}
}
private string _lastName;
public string LastName
{
get { return _lastName; }
set
{
string oldValue = value;
_lastName = value;
if(oldValue != value)
OnPropertyChanged("LastName");
}
}
}
a questo:
var bindingFriendlyInstance = IoC.Resolve<Customer>(new NotifyPropertyChangedWrapper());
Domande:
- Quale magico contenitore IoC fornisce questa bontà?
- Un esempio di implementazione di questo?
- Eventuali aspetti negativi?
- In un progetto con dipendenze complesse, piangerò quando cerco di applicare l'associazione dati a questi oggetti?
Sono quasi sicuro che la risposta ti stuzzica solo con una "idea" piuttosto che un'implementazione reale. –
@chibacity. In tal caso, Ben Scheirman è una presa in giro migliore di qualsiasi prostituta che abbia mai visto. (In un film, ovviamente). – AngryHacker
se fosse necessario un Cliente privo di logica ma pura DTO e notifiche di modifica delle proprietà sarebbe meglio dichiararlo come un'interfaccia, ICustomer, e non è un grosso problema per creare una classe concreta con generazione di codice dinamica. –