Tengo la siguiente manera:¿Cómo podría refactorizar este código maloliente? (Registro, copiar y pegar, Net 3.5) Código
Logger logger = new Logger();
System.Diagnostics.Stopwatch stopWatch = new System.Diagnostics.Stopwatch();
logger.LogInformation("Calling SomeObject.SomeMethod at " + DateTime.Now.ToString());
stopWatch.Start();
// This is the method I'm interested in.
SomeResponse response = someObject.SomeMethod(someParam);
stopWatch.Stop();
logger.LogInformation("SomeObject.SomeMethod returned at " + DateTime.Now.ToString());
logger.LogInformation("SomeObject.SomeMethod took " + stopWatch.ElapsedMilliseconds + " milliseconds.");
necesito para envolver un código similar alrededor de un lote más objetos y sus métodos para hacer algo de perfiles de rendimiento. No tengo permiso para usar complementos de terceros o software, etc.
Realmente preferiría no escribir este mismo código en todas estas llamadas a este método, todo este código de registro. ¿Cómo podría refactorizar esto para eliminar parte de mi esfuerzo de codificación?
Si no estoy siendo muy claro, por favor haga preguntas en los comentarios e intentaré aclarar.
¡Gracias por cualquier ayuda!
Si esto fuera Java, sugeriría AspectJ. ¿Hay un equivalente para .Net? –
Hay algo similar para .Net, pero probablemente no podría usarlo. –