2

アプリケーションの設定が列挙型によって制御される vb.net に Java プログラムを変換しています。

    private enum SmsTagRule {
    //      KEYWORD   DOMAIN    BusinessClass  PREFIX  SEARCHNAME   SEARCHPARAM  SENDEMAIL  KEYWORDS...
    BAG_TAG("BagTag", "BagTag", "FoundBagTag", "b", "SearchBagTag", "490_TagNumber", true, "BagTag"),
    SKI_TAG("SkiTag", "SkiTag", "FoundSkiTag", "a", "SearchSki", "518_LabelNo", false, "SkiTag", "ski"),
    PC_TAG("PcTag", "ds", "FoundPC", "", "SearchPcTag", "585_LabelNo", false, "pc");

また、選択したウィッチ「TAG」に応じて、異なる設定が返されます。vb.NET でこれを行う方法はありますか。これらの TAG ごとに 1 つの列挙型を作成することを考えましたが、これはより良い解決策であるように思われます。何か案は?

4

1 に答える 1

2

続けて、設定を表すカスタムタイプを作成します。

Class TagRule

    Public Shared BAG = new TagRule("BagTag", "BagTag", "FoundBagTag", ...)
    Public Shared Ski = new TagRule("SkiTag", "SkiTag", "FoundSkiTag", ...)
    ...

    Dim _keyword As String
    Public Property Keyword as String
        Public Get
            return _keyword         
        End 
        Private Set
            _keyword = value
        End
    End Property

    ...

    Private Sub New(keyword as String, domain as String, businessclass as String, ...)
        _keyword = keyword
        _domain = domain
        ....
    End Sub

End Class

そして、あなたはそれをこのように使うことができます:

Dim setting As TagRule = Nothing

If somecondition Then
    setting = TagRule.Ski
Else
    setting = TagRule.BAG
End If

Dim keyword = setting.Keyword
Dim domain = setting.Domain
于 2012-08-15T14:48:46.337 に答える