1

好的,我对如何处理这个问题有点茫然,我正在寻找关于这个方向的想法。

我正在开发一个带有 Razor 站点的 ASP.Net MVC 3,它将处理一组学校的注册。在注册过程开始时,会询问用户他们正在注册哪所学校。他们注册的学校将决定需要哪些信息(一所学校需要 SSN,而另一所不需要,一所需要驾驶执照 # 而另一所不需要,等等)。我正在使用 LINQ to SQL 并使用 LINQ to SQL 生成的模型作为我的视图模型。我在整个站点的其余部分都通过属性使用了不显眼的验证,所以如果可能的话,我想继续这样做。那么如何根据他们要去的学校制作模型所需的属性呢?

我能想到的解决这个问题的一种方法是为每所学校提供一个视图(或一系列视图),并且以某种方式使验证取决于正在使用的视图,但我不知道该怎么做通过不显眼的验证。

或者,<RequiredForSchools(requiredSchoolIDs as Integer())>如果我能想办法将 SchoolID 获取到自定义验证器(它的 javascript 端和服务器端),则可能对所有学校使用相同的视图,但有一个自定义验证器。

4

1 回答 1

0

有多少个变量?你能把它压缩到几个,或者少于 10 个吗?在这种情况下,您可以为每个视图模型使用少量变化,这可能是最简单的。您根据学校选择视图模型。

如果有太多变化,那么您可能必须编写自己的验证属性来做决定。

于 2011-06-09T15:52:20.263 回答