我想弄清楚如何最好地为我的mvc项目进行验证。我想出了两种方法,但不确定哪种方式最好(如果有的话)
在视图中完成验证后,域对象将被传递,然后检查业务逻辑,然后保存到数据库。
这意味着,如果我重用我的服务层,每个应用程序都必须为相同的东西编写验证(例如"名称"是必需的)。如果他们忘记这样做,那么服务层就会崩溃。
这将给出一个valdiation点,并且在保存到db之前始终确保所有数据都是正确的。
这在我看来产生了很大的开销,尽管我看到了它。我将需要一个viewmodel,然后获取viewmodel并将其传输到数据传输对象,让它进入服务层并验证它。
如果有效,则将其映射到域对象并保存。
答案 0 :(得分:1)
所有验证都应在后端实施,因为您无法控制最终用户浏览器上发生的情况。验证最重要的目标是保护系统的完整性。
由于您在视图中执行的任何验证都是重复的,因此只实施可以增强用户体验的验证(例如,响应式设计,减少对服务器的调用等)。
答案 1 :(得分:0)
验证在View中只有麻烦制造者。因为基于java脚本,专业用户检查并删除一些javascript代码。我在前端和后端验证我的项目。