我喜欢Rails,所以我被Rob Conery's Massive ORM吸引了......好吧,非常困扰。
我的问题是你究竟能和你应该如何使用Massive进行验证?在Rails中,您可以使用简单的“validates”关键字来进行内联验证和/或引用一个方法来调用...以及定义何时进行此类验证的能力(例如,仅用于创建,保存后等)。 )。
这样的Rails是否可以通过Massive获得灵感验证?如果是这样,推荐的方法是什么?
非常感谢-wg
答案 0 :(得分:2)
我今天想知道同样的事情,我仍然没有真正得到满意的答案,但我确实找到了Tekpub MVC 3系列的示例代码,该代码最近被推送到Github并使用Massive进行数据访问 -
https://github.com/tekpub/mvc3
此class包含针对视图模型的一些DataAnnotation验证,据我所知,“域”类都没有包含任何验证。
答案 1 :(得分:1)
使用Asp.net MVC,最推荐的方法是使用DataAnnotations或FluentValidations进行验证。如果你只是谷歌这些条款,那里有很多知识。
我们Seesharpies更喜欢不对数据库模型进行验证,因此我们可以清楚地分离关注点。验证数据库模型并非“错误”,但由于静态和编译语言的刚性,其他替代方法并没有多大意义。
答案 2 :(得分:1)
我不会对Massive进行验证。对于我的域模型,我有“命令”使用DataAnnotations的DTO。我的域对象验证它们,然后我使用“域事件”模式将更改发布到我的聚合。
这里我将使用大量的内容 - 收听我的域的订阅者将处理被引发的事件DTO并使用它们通过大量更新数据库。然后我的视图模型将使用大量来查询数据库。
我一直在使用EF 4.1,我厌倦了映射命令 - >事件 - >查看模型/ dto。我将使用大量的,所以我不必再定义视图模型/ dto了。
答案 3 :(得分:1)
根据GitHub上的自述文件,最近已向Massive添加了验证。
答案 4 :(得分:0)
进行验证与使用EF进行验证没有什么不同。这是对上述答案的评论。
如果您熟悉DataAnnotations,那么您就知道如何进行验证。假设您有视图模型,则将注释添加到它们。在控制器中,您正在使用进行验证的视图模型。验证后,您将这些传递给您的数据层,这可能是巨大的,或者是等等。
要明确的是,您没有验证您正在验证视图模型的实体。希望这是有道理的!哈哈哈哈哈,我几乎不明白。