Wyobraź sobie metodę, która próbuje odzyskać podmiot, który powinien istnieć w Db pod względem logiki biznesowej (dla konkretnego przypadku).Który wyjątek powinienem wyrzucić, jeśli żądany podmiot nie istnieje w Db?
Kiedy próbuję odzyskać go z Db za pośrednictwem mojego repozytorium i jeśli wrócę null
, który wyjątek powinienem wyrzucić? (Myślałem: ObjectNotFoundException
)
+1 dla 'null' zamiast wyjątku – Habib
Dlaczego wyrzucić wyjątek? Cóż, dzieje się tak dlatego, że z punktu widzenia logiki biznesowej ten rekord powinien istnieć, ponieważ reprezentuje wartość DEFAULT dla konkretnego przypadku. Więc jeśli nie istnieje, metoda (po stronie serwera) nie może kontynuować - nawet jeśli żądanie (które pochodzi z usługi WCF). – pencilCake
Z punktu widzenia biznesu nigdy nie potrzebujesz wyjątku. Z Twojego opisu wynika, że nie powinien się pojawić błąd techniczny. W takim przypadku możesz wybrać dowolną nazwę, która ma znaczenie dla dzwoniącego. Nawiasem mówiąc, nie wystawiaj wyjątku z WCF, ale zamiast tego błędu SOAP. –