2011-01-11 6 views
1

So habe ich diese allgemeine Frage, wo soll ich gewisse Logik zum Beispiel haben -Sollen Validierungs- und Datenkorrekturlogik in Business- oder Datenzugriffsschichten durchgeführt werden?

var data=GetItems(); 
if(data==null) 
    //return some defaults 
else 
    return values 

// zweiten Fall ..

if(id<=0) 
    //throw some exception 
else 
    return id 

sollte also der obige Code sollte es ein Teil der Daten sein Access-Layer (ich denke, es sollte) oder eine Par-Business-Schicht. Auch sollte die Validierung von Daten generell Teil des Datenzugriffs oder der Business-Schicht sein?

Antwort

3

Ich denke, die Frage ist, ob es zwischen dem Geschäft oder der UI-Schicht sein sollte. Der Zweck der Datenschicht ist CRUD, also sollte die Logik nur darauf ausgerichtet sein.

Im zweiten Beispiel würde ich sagen, das ist Geschäftslogik. Sie sagen, dass eine negative ID eine Bedeutung hat, die eine Ausnahme auslösen sollte. Diese Bedeutung existiert nur innerhalb der Logik der Anwendung, die Sie erstellen - es gibt nichts, was dem Datenspeicher innewohnt, der besagt, dass dies der Fall sein sollte.

Also meine Stimme ist für Business-Schicht, und Sie sollten auch ein wenig über die UI-Schicht denken.

Verwandte Themen