VB / MVC:带条件的服务器端模型验证

时间:2016-11-15 11:50:51

标签: asp.net asp.net-mvc vb.net

我有一个用VB构建的ASP.NET MVC5应用程序。 我有一个表单,将数据提供给viewmodel,我想将服务器端验证添加到字段Age,但仅限Alive为true。 这是我的模特:

Public Class MyViewModel
  Public Property Name As String
  Public Property Age As Integer
  Public Property Alive As Boolean
End Class

我在SO上发现了thisthis问题。 VB没有Yield,所以我尝试了以下内容:

Public Function Validate(validationContext As ValidationContext) As Enumerable(Of ValidationResult) Implements IValidatableObject.Validate
        Dim results As List(Of ValidationResult) = New List(Of ValidationResult)
        If Alive And Age > 120 Then
            results.Add(New ValidationResult("Too old."))

        Else
            results.Add(ValidationResult.Success)
        End If
        Return results
    End Function

现在,我得到一个空引用异常。 如何在VB中实现条件验证?

0 个答案:

没有答案