De obicei cand dorim sa putem compara doua obiecte de acelasi tip folosim IComparar . Aceasta ne pune la dispozitie metoda int Compare(T x, T y); Valorea returnata de aceasta metoda poate sa fie: >0 - daca x este mai mare ca y; =0 - daca x este egal cu y; <0 - daca x este mai mic ca y; In cazul in care una( sau amandoua) din valori, metoda poate sa returneze: >0 - daca y este null; =0 - daca x so y sunt null; <0 - daca x este mai mic ca y; Dar pentru a putea face aceasta comparatie una din valori trebuie sa fie diferita de null, atlfel o sa avem parte de NullReferenceException . Pentru a putea rezolva aceasta problema putem sa avem ceva de genul: var valoare = x == null ? ( y == null ? 0 : -1 ) : x.CompareTo(y); Este necesar sa verificam daca una din valor este null. Valoarea lui y nu trebe sa o verificam obligatoriu, dar cea a lui x trebuie sa o verificam mereu. Pentru a rezolva acest neajuns, avem la dispozitie propietatea Default pe IComparable . Aceasta va crea automat ...
DREAMER, CRAFTER, TECHNOLOGY ENTHUSIAST, SPEAKER, TRAINER, AZURE MVP, SOLVING HARD BUSINESS PROBLEMS WITH CUTTING-EDGE TECHNOLOGY