2009-08-04 11 views
6

mam metodę w DAL jak:Korzystanie zerowalne typów w API publicznych

public bool GetSomeValue(int? a, int?b, int c) 
{ 
    //check a Stored Proc in DB and return true or false based on values of a, b and c 
} 

w tej metodzie, ja przechodzącą dwie zerowalne typów, ponieważ wartości te mogą być puste (i sprawdzanie ich jako wartość null w DB zapisanego Proc). Nie chcę używać liczb magicznych, więc czy jest w porządku przepuszczanie takich typów nullablowych (zarówno z perspektywy wydajności, jak i elastyczności architektury)?

Odpowiedz

2

Myślę, że jest to całkowicie poprawne - wolę typy nullable od wartości magicznych.

1

Ponieważ typy zerowalne należą do Biblioteki klas podstawowych i nie są powiązane z żadnym konkretnym językiem, uważam je za całkowicie poprawne. Jedyne, co staram się trzymać z daleka od publicznych API to konstrukcje, które są specyficzne dla języka.

0

Myślę, że jeśli dobrze używasz Kolekcji lub Kolekcji. Obiekty ogólne, powinieneś czuć się doskonale uzasadniony przy użyciu Nullable<T>.

. Języki .NET są silnie napisane na maszynie, więc uważam, że należy spodziewać się wpisanej metody API. Ten typ to (Nullable<int>, Nullable<int>, int).

Ok przeze mnie też.

Powiązane problemy