【发布时间】:2010-01-21 04:00:55
【问题描述】:
我正在构建一个 asp.net mvc 应用程序,供用户参加论文比赛。我在 sql server 2005 中有一个 Essay 表。我通过拖动服务器资源管理器中的表并将布局保存为我命名为 DAL.dbml 的内容来创建我的域模型。
我现在正在尝试使用 Steven Sanderson 的Pro ASP.NET MVC Framework 第 11 章中提到的方法在业务层中实现输入字段验证。但是,作者并没有像我一样创建他的模型,所以我不知道将我的模型特定代码放在哪里。
我考虑将其放入自动生成的 DAL.designer.cs 文件中,但这似乎有问题。
我还尝试创建一个新类 EssayRequired.cs,在其中我使 EssayRequired 扩展了 Essay。这几乎奏效了。
它成功显示了所有的验证错误。
但是到了实际保存记录的时候:
EssayTable.Context.Refresh(RefreshMode.KeepCurrentValues, essay);
EssayTable.Context.SubmitChanges();
我收到此错误:
“DomainModel.Entities.EssayRequired”类型未映射为表。
关于我现在应该做什么有什么想法吗?有没有更好的地方来放置特定于域的代码,如果 db 表发生更改并且我必须删除并重新拖动表,这些代码不会被清除?
或者有没有办法告诉应用 EssayRequired 对象应该放在 Essay 表中?
谢谢,斯科特
【问题讨论】: