【问题标题】:Elegant Method to Validate Submitted Foreign Keys验证提交的外键的优雅方法
【发布时间】:2011-06-19 09:47:31
【问题描述】:

我最近阅读了几篇关于 asp.net MVC 中的模型绑定和验证的文章和问题。到目前为止,我错过的是对给定外键 ID 的验证(例如相关项目的下拉列表)。

如果我们考虑以下情况:

有一个实体(即网站区域)具有一组文件夹,用户可以将条目放入该文件夹中,但只能放入属于用户有权访问的网站区域的文件夹中。

那么,验证给定外键值是否属于属于相关网站区域的文件夹集的优雅方法是什么?

我认为通过使用自定义模型绑定器和/或可以访问数据存储库的自定义验证器来执行此检查会很聪明?

【问题讨论】:

    标签: asp.net-mvc model-view-controller validation binding model


    【解决方案1】:

    为什么不让数据库完成它的工作并让它验证 FK。在您的控制器中,您可以处理错误并显示回您认为合适的视图。

    【讨论】:

    • 问题不在于 FK 约束的纯粹性质(在这种情况下您是对的),而是仅提供特定于特定类型父实体的选项子集时的访问控制问题(即仅特定于该发票或其他任何内容的行位置)。但我想我可以转移你的想法。考虑到直接操作 - 围绕用户界面工作 - 不是预期的用例,因此模型/数据库层引发的异常是合适的。
    猜你喜欢
    • 2011-10-03
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    相关资源
    最近更新 更多