我正在構建一個asp.net mvc應用程序供用戶輸入作文比賽。我在sql server 2005中有一個Essay表。我通過拖動服務器資源管理器中的表格來創建域模型,並將佈局保存爲我所命名的DAL.dbml。使用.dbml設計器時,應將模型特定的代碼放在哪裏?
我現在試圖使用Steven Sanderson在Pro ASP.NET MVC Framework的第11章中提到的方法在業務層中實現輸入字段驗證。但是,作者並沒有像我一樣創建自己的模型,所以我對於在哪裏放置特定於模型的代碼感到不知所措。
我認爲把它放到自動生成的DAL.designer.cs文件中,但這似乎有問題。
我也試過創建一個新的類,EssayRequired.cs,我在那裏做了EssayRequired擴展論文。這幾乎奏效。
它成功顯示了所有的驗證錯誤。
但是,當談到時間居然保存記錄:
EssayTable.Context.Refresh(RefreshMode.KeepCurrentValues, essay);
EssayTable.Context.SubmitChanges();
我得到這個錯誤:
類型「DomainModel.Entities.EssayRequired」不是映射爲一個表。
有關我現在應該做什麼的任何想法?有沒有更好的地方可以放置域特定的代碼,如果數據庫表發生更改,這些代碼將不會被清除,我必須刪除並重新拖動該表。
或者有沒有辦法告訴應用程序,EssayRequired對象應該在Essay表中登陸?
謝謝,斯科特