如何在vb.net中创建“ RequiredIf”自定义有效属性

USER_8675309

我正在尝试在VB.NET中创建一个customValidAttribute

Namespace EventRules
Public Class CustomRuleAttribute
Inherits ValidationAttribute

Protected Overrides Function IsValid(value As Object, validationContext as validationContext) As ValidationResult
    If EventIsInOneWeek = True Then
        'Property is required
    End If
    Return New ValidationResult(Me.FormatErrorMessage(validationContext.DisplayName))
End Function

在我的界面中

Imports System.ComponentModel.DataAnnotations
Imports EventRules

Namespace Contracts
Public Interface IEvent

Property EventIsInOneWeek As Boolean
<CustomRule()>
Property AdditionalProperty

因此,我遇到的错误是在EventIsInOneWeek上,并说“引用非共享成员需要对象引用”

编辑:传入的对象是不同于'EventIsInOneWeek'的属性,并且我只希望EventIsInOneWeek为true时才需要它。

编辑:还更完整地更新了代码

USER_8675309

如上所述-我正在寻找的简单解决方案是将整个业务对象都传递给validationContext但是,这暴露了我系统中的一些安全漏洞,因此我创建了此替代方法。

在我的基本业务逻辑中:

Public Overridable Function CheckRules() As Boolean
    Me.Errors = New List(Of ValidationRules)()
    Return Me.Validate(Me.Errors)
End Function
...
Public Overridable Function Validate(validationContext As ValidationContext) As IEnumerable(Of Validation Result) Implements IValidateObject.Validate
     Return Nothing
End Function

并且在我的业务逻辑中,对象本身

Protected Overrides Function Validate(validationContext As ValidationContext) As IEnumerable(Of Validation Result)
    Dim results = New List(Of ValidationResult)()  
    'valiation conditionals here
    Return results
End Function

我正在将基本逻辑传递到我的业务对象中,它似乎运行良好,但是不幸的是,它没有像这样自动生成前端验证CustomValidationAttributes

这也使我的validationRules有一些可重用性,而在传递validationContext时将无法提供。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Django Rest Framework中创建自定义JSON有效负载结构?

来自分类Dev

如何在VB.NET for WinForms中创建没有BackgroundImage属性的自定义可滚动用户控件

来自分类Dev

如何在Dialogflow中将Facebook Carousel创建为“自定义有效载荷”

来自分类Dev

如何在Ionic v4中生成有效的自定义组件?

来自分类Dev

如何有效地在Javascript中定义自定义HTMLElement属性,以便能够使用HTML进行设置?

来自分类Dev

Python。如何有效地从数组中删除自定义对象

来自分类Dev

如何在purescript-halogen中结合有效的事件处理程序和自定义EventUpdate?

来自分类Dev

使用自定义属性创建有效的站点地图

来自分类Dev

自定义数据中的有效字符-HTML5中的属性名称

来自分类Dev

如何在vb.net中为datetimepicker设置自定义格式?

来自分类Dev

如何在vb.net中为datetimepicker设置自定义格式?

来自分类Dev

如何在vb.net中的图表上的数据点上放置自定义标签?

来自分类Dev

VB.NET-如何在linq中向类对象添加自定义方法?

来自分类Dev

如何向R中的向量累计应用自定义函数?以一种有效且惯用的方式吗?

来自分类Dev

如何向R中的向量累计应用自定义函数?以一种有效且惯用的方式吗?

来自分类Dev

如何在Asp.Net MVC中创建自定义HTML帮助器

来自分类Dev

如何在ASP.NET MVC5中创建自定义支架模板?

来自分类Dev

如何在ASP.Net MVC4中创建自定义web.config?

来自分类Dev

如何在ASP.NET MVC中创建到自定义路由的ActionLink?

来自分类Dev

如何在Asp.Net MVC中创建自定义HTML帮助器

来自分类Dev

如何在电报.net api中创建自定义键盘?

来自分类Dev

如何在lineItems上创建自定义属性

来自分类Dev

如何在vb.net/SQL Server中更有效地处理DBNull.value

来自分类Dev

如何在 vb.net 中使用年份和整数生成自定义 ID

来自分类Dev

Powershell-如何在自定义对象中编辑现有属性

来自分类Dev

如何在HAML中添加带有冒号或点的自定义属性?

来自分类Dev

如何在原始Javascript中创建,添加自定义属性并触发自定义事件

来自分类Dev

如何创建自定义的“文档属性”?

来自分类Dev

如何创建自定义属性类型

Related 相关文章

  1. 1

    如何在Django Rest Framework中创建自定义JSON有效负载结构?

  2. 2

    如何在VB.NET for WinForms中创建没有BackgroundImage属性的自定义可滚动用户控件

  3. 3

    如何在Dialogflow中将Facebook Carousel创建为“自定义有效载荷”

  4. 4

    如何在Ionic v4中生成有效的自定义组件?

  5. 5

    如何有效地在Javascript中定义自定义HTMLElement属性,以便能够使用HTML进行设置?

  6. 6

    Python。如何有效地从数组中删除自定义对象

  7. 7

    如何在purescript-halogen中结合有效的事件处理程序和自定义EventUpdate?

  8. 8

    使用自定义属性创建有效的站点地图

  9. 9

    自定义数据中的有效字符-HTML5中的属性名称

  10. 10

    如何在vb.net中为datetimepicker设置自定义格式?

  11. 11

    如何在vb.net中为datetimepicker设置自定义格式?

  12. 12

    如何在vb.net中的图表上的数据点上放置自定义标签?

  13. 13

    VB.NET-如何在linq中向类对象添加自定义方法?

  14. 14

    如何向R中的向量累计应用自定义函数?以一种有效且惯用的方式吗?

  15. 15

    如何向R中的向量累计应用自定义函数?以一种有效且惯用的方式吗?

  16. 16

    如何在Asp.Net MVC中创建自定义HTML帮助器

  17. 17

    如何在ASP.NET MVC5中创建自定义支架模板?

  18. 18

    如何在ASP.Net MVC4中创建自定义web.config?

  19. 19

    如何在ASP.NET MVC中创建到自定义路由的ActionLink?

  20. 20

    如何在Asp.Net MVC中创建自定义HTML帮助器

  21. 21

    如何在电报.net api中创建自定义键盘?

  22. 22

    如何在lineItems上创建自定义属性

  23. 23

    如何在vb.net/SQL Server中更有效地处理DBNull.value

  24. 24

    如何在 vb.net 中使用年份和整数生成自定义 ID

  25. 25

    Powershell-如何在自定义对象中编辑现有属性

  26. 26

    如何在HAML中添加带有冒号或点的自定义属性?

  27. 27

    如何在原始Javascript中创建,添加自定义属性并触发自定义事件

  28. 28

    如何创建自定义的“文档属性”?

  29. 29

    如何创建自定义属性类型

热门标签

归档