Ho un oggetto che ha circa 50 proprietà, ma uno dei miei metodi usa solo circa 3 di queste proprietà. È ancora meglio passare l'intero oggetto o parti. Uno scenario sarebbe che stavo usando Dapper per interrogare un database per mappare i dati in un oggetto POCO, ma ho solo bisogno di alcune proprietà, quindi mi trovo di fronte a questi due scenari:
var car = db.Query<Car>("SELECT * FROM Car Where Id = @Id", new {Id}).FirstOrDefault();
Process(car);
o
var car = db.Query<car>("SELECT VIN, Year, Color FROM Car Where Id = @Id", new {Id}).FirstOrDefault();
Process(car.VIN, car.Year, car.Color);
Nel caso precedente, il fatto che io stia usando Dapper è importante? Conosco le meno proprietà che deve mappare al minor tempo necessario. Ma allo stesso tempo, riportando solo un insieme di proprietà, se ho bisogno di qualcos'altro, dovrò modificare la query o aggiungere un nuovo metodo per riportare quello che voglio.