2012-04-14 8 views
3

Es gibt eine Crud-Operationen in Standard-Single-Page-Anwendungsvorlage von ASP.NET MVC 4 wie unten.Wie verwenden Sie Business-Validierungen in DbDataController?

upshot.js interagiert mit der Antwort von DbDataController Aktionen und wenn der Vorgang fehlschlägt dann nimmt upshot.js Validierungsfehler und es kann auf Client-Seite angezeigt werden.

Was ich tun muss, ist meine eigenen Geschäftsregeln in den Betrieb zu setzen. Aber es ist nicht klar, wo Validierungsfehler in DbDataController zu setzen.

Beispiel: InsertEntity(entity); Die Operation kann Validierungsfehler setzen, wenn sie fehlschlägt und Validierungsfehler automatisch an den Client gesendet werden. Aber ich möchte meine Geschäftsvalidierungsfehler setzen, wenn es auftritt. Also, wo kann ich es hinstellen?

public partial class TasksSPAController : DbDataController<MvcApplication8.Models.TasksSPAContext> 
{ 
    public IQueryable<MvcApplication8.Models.TodoItem> GetTodoItems() { 
     return DbContext.TodoItems.OrderBy(t => t.TodoItemId); 
    } 

    public void InsertTodoItem(MvcApplication8.Models.TodoItem entity) { 
      //before this action i want to check business validation rules. 
      // if it is not validated so i want to put errors to response 
      // that is usable by upshot.js 
      InsertEntity(entity); 
    } 

    public void UpdateTodoItem(MvcApplication8.Models.TodoItem entity) { 
     UpdateEntity(entity); 
    } 

    public void DeleteTodoItem(MvcApplication8.Models.TodoItem entity) { 
     DeleteEntity(entity); 
    } 
} 

Antwort