在VB.NET中动态设置操作员值,而不是静态值



我使用代码中的比较操作员(>或<)进行了一些计算。目前,我有'>'静态书面。

  If Counter_1 > MaxAllow Then
           ' ......ASP.net code.

现在,我想使其动态。

现在如何使用此变量,以便可以计算变量(> or&<)对于前。

If Counter_1 [variable] MaxAllow. 

这里的变量可能为>或<。

注意:我正在使用语言VB使用ASP.NET 2.0。在此关注的情况下立即提供帮助。

我不相信你可以做你想要的。

您可以使用这样的函数来完成:

Public Function GreaterThanLessThan(value1 As Integer, value2 As Integer, aOperator As Char) As Boolean
    If aOperator <> ">"c AndAlso aOperator <> "<"c Then
        'If we get here then the operator character wasn't > or <
        Throw New Exception("Invalid operator")
        Return False
    Else
        Return If(aOperator = ">"c, (value1 > value2), (value1 < value2))
    End If
End Function

用法:

    If GreaterThanLessThan(Counter_1, Maxllow, ">"c) Then
    End If

此代码可能会受益于一种伸缩方法(名称较短):

<Extension()>
Public Function GtLt(value1 As Integer, value2 As Integer, aOperator As Char) As Boolean
...etc

这样您就可以这样做:

If Counter_1.GtLt(MaxAllow,">"c) Then

最新更新