Tjipp.
att kolla DateTime mot null gå icke eftersom DAteTime är en struct och valuetypes (dvs structs mm) ej kan vara null. Så sätt ditt DateTime till DateTime.MinValue och testa sen mot detta istället för mot null.
Angående förslag och sånt:
Det är lite svårt att säga något om det egentliga OO och hur bra det är uppbygt man måste nästan se alla klasser för att kunna säga någe vettigt. Denna klass ser dock helt ok ut.
och så det lite petnoga: ;)
Du har blandat engelska och svenska på variabler namn. Jag föredrar att använda ett språk och då enbart engelska.
Att döpa namespacet och klassen till samma sak är obra. Försök ge namespacet ett mkt mer generellt namn.
Din accessor intDays döp den till Days. Det är överflödigt att döpa den till int eftersom dess return typ ges av return typen.
Sen brukar jag alltid döpa accessorns interna private variabel till samma namn fast med små bokstäver. Alltså days istället för myDays.
dteNow kan du kasta in i set satsen så slipper du ha den som private member.
Ok, detta var kanske lite löjlilgt och då ska man alltid om man är pedagogisk förklara varför..eller hur :)
Anledningen till alla dessa över är att man ska använda ett standaliserat sätt att skriva kod på. Detta spelar ju ingen roll för hemma snickraren börje men sitter man på ett större företag där ett tiotal pers ingår i ens projekt gäller det att alla döper sina variabler etc på ett liknande sätt (vilket i och för sig projektledaren redan gjort).
dteNow ska flyttas in för att man ska använda så få globala variabler som möjlilgt. Vilket medför att klassen tar mindre plats i minnet.
Och dessa petnoga regler kommer ifrån
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpgenref/html/cpconnamingguidelines.asp
Behöver man ideer till hur man ska döpa saker så är det enklaste att ta en titt på hur de har döpt sakerna i frameworket.
Nåja en hel uppsatts bidde det, hoppas det var till någon nytta :stud