Che cosa preferisci e perché?
void PrepMyInstantiatedObject(SomeComplexDTO someComplexDto){
someComplexDto.Name = SomeOtherClassHelper.DerivedName(someComplexDto.Name);
someComplexDto.Ids = SomeOtherClassHelper.Resolve(someComplexDto.RelatedIds);
someComplexDto.SingleId = SomeOtherClassHelper.FindId(someComplexDto.Name);
}
o
SomeComplexDTO PrepMyInstantiatedObject(SomeComplexDTO someComplexDto){
someComplexDto.Name = SomeOtherClassHelper.DerivedName(someComplexDto.Name);
someComplexDto.Ids = SomeOtherClassHelper.Resolve(someComplexDto.RelatedIds);
someComplexDto.SingleId = SomeOtherClassHelper.FindId(someComplexDto.Name);
return someComplexDto;
}
Anche se restituire l'oggetto non è necessario (2 ° metodo) - qualcuno mi stava dicendo che era più facile capire come usare il metodo PrepMyInstantiatedObject
. Nel frattempo ho pensato che il nome fosse sufficiente per trasmettere il suo scopo.
public class SomeComplexDTO
{
public string Name {get; set;}
public IEnumerable<int> Ids {get; set;}
public IEnumerable<int> RelatedIds {get; set;}
public int SingleId {get; set;}
}
Si potrebbe sostenere che questo DTO dovrebbe avere la logica per prepararsi, tuttavia il mio team non vuole aumentare questa classe con la logica.