所以我在我的服務的方法,我會從一個控制器調用:MVC存儲庫模式與服務 - 如何獲得DAL錯誤?
public void SendMessage(Message message) {
message.Property = "Random";
try {
// try some insert logic
}
catch (Exception) {
// if it fails undo some stuff
// return the errors
throw;
}
// if there are no errors on the return the operation was a success
// but how do I get the Service generated data?
}
編輯:
所以,問題是不是真正的讓我的代碼工作這是個問題我與存儲庫模式同時使用服務層作爲「之間走」通信的DAL和演示之間
所以我有一個單獨的程序集叫做DataLibrary
。
的DataLibrary
有我的模型(Message
),我的資料庫和服務(MessageService
)
在我的MVC網站,我通常會有一個控制器,具有CRUD功能。這將是這個樣子:
public ActionResult Create(Message message) {
if(ModelState.IsValid) {
db.insert(message);
}
Return View(message);
}
但是,通過使用存儲庫模式,與通信服務層我有這個:
public ActionResult Create(MessageCreateModel message) {
if(ModelState.IsValid) {
MessageService.SendMessage(message.ToDTO());
}
Return View(message);
}
我怎麼知道該操作是成功還是不成功爲什麼?
如何在上述同時從服務的業務邏輯中檢索填充數據?
如何在儘可能接近MVC設計模式/關注可擴展性的前提下,如何實現上述兩者?
爲了澄清,服務層,回購和DTO包裝在一個單獨的程序集內。 – Smithy 2013-04-29 15:08:24