Avatar billede lemon Nybegynder
27. august 2004 - 17:50 Der er 4 kommentarer og
1 løsning

Log alle method kald

Kan man logge alle method-kald uden at skulle indsætte eks. Debug.Write("Object.Method(arg, arg)") i toppen af alle methods?

Hvordan?
Avatar billede arne_v Ekspert
27. august 2004 - 18:14 #1
Nej.

Ikke medmindre du bruger et AOP framework for C#.
Avatar billede simonvalter Praktikant
27. august 2004 - 18:15 #2
du kunne bruge aop

http://aspectsharp.sourceforge.net/

http://sourceforge.net/projects/aopnet/

Det som det går ud på er at du har nogen "Cross-cutting concerns" som er aspekter i programmer som ikke er rettet mod dit hoved problem.. feks hvorfor skulle et bruger objekt have noget med logging at gøre.. så rent objektorienteret vil det være pænere vil nogen mene.
du får også den fordel at du slipper for at skrive en masse duplikeret kode .. hvis alle dine klasser med metodeX skulle logges og så har den også den fordel at du ikke glemmer at logge metodeX på en af klasserne.

AOP kan bruges til andre ting end at logge som caching,sikkerhed m.m og det er ikke noget nyt men det er blevet mere populært især inden for java på det sidste.

det man gør er at definere et "pointcut" som siger at når dette sker i koden så gør dette (istedet for/før/efter)
f.eks kunne det være at alle exceptions bliver logget.
eller at alle metoder med set*, getUser* bliver logget og  ved Klasse.commmit(double d) skal der foretages noget efter commit.
Man kan meget med aop men det skal selvfølgelig bruges med måde for ellers kan det hurtigt bliver uoverskuligt, men et logging aspect er meget normalt og der er helt klart en fordel.
Avatar billede lemon Nybegynder
27. august 2004 - 19:57 #3
Hmmm jow det var da en mulighed
Avatar billede simonvalter Praktikant
23. december 2004 - 19:04 #4
fandt du ud af noget..
Avatar billede lemon Nybegynder
15. marts 2005 - 15:04 #5
Nej, desværre ikke :(

Lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester