vb到c#转换器的问题

时间:2011-08-22 14:27:31

标签: c# vb.net

我有一个方法

 Public Property ConfigKeys(ByVal keyName As String) As WinItUtils.Classes.ConfigKey
            Get
                Return GetConfigKey(keyName)
            End Get
            Set(ByVal value As WinItUtils.Classes.ConfigKey)
                SetConfigKey(value)
            End Set
        End Property

和转化器http://www.developerfusion.com/tools/convert/vb-to-csharp/给了我

public WinItUtils.Classes.ConfigKey ConfigKeys
        {
            get { return GetConfigKey(keyName); }
            set { SetConfigKey(value); }
        }

这是胡说八道。或者这可能是我不知道的:/ 我是视觉基础的新手,所以也许我错过了一些东西 我正在使用.net 4.0

这是ConfigKey类:

Namespace Classes

    ''' <summary>
    ''' Business class that implements a configuration key from WINIT_CONFIG table.
    ''' </summary>
    ''' <remarks></remarks>
    Public Class ConfigKey
        Implements IEquatable(Of ConfigKey)

        Private _resourceKey As String

        Private _value As String

        Private _id As Integer

        Private _handlerId As Integer

        Private _configType As WinItUtils.Enums.WinItConfigTypes

        Public Sub New()
        End Sub

        Public Property Id() As Integer
            Get
                Return _id
            End Get
            Set(ByVal value As Integer)
                _id = value
            End Set
        End Property

        Public ReadOnly Property IsGlobal() As Boolean
            Get
                Return _handlerId < 0
            End Get
        End Property

        Public Property HandlerId() As Integer
            Get
                Return _handlerId
            End Get
            Set(ByVal value As Integer)
                _handlerId = value
            End Set
        End Property

        Public Property ResourceKey() As String
            Get
                Return _resourceKey
            End Get
            Set(ByVal value As String)
                _resourceKey = value
            End Set
        End Property

        Public Property ConfigType() As WinItUtils.Enums.WinItConfigTypes
            Get
                Return _configType
            End Get
            Set(ByVal value As WinItUtils.Enums.WinItConfigTypes)
                _configType = value
            End Set
        End Property

        Public Property Value() As String
            Get
                Return _value
            End Get
            Set(ByVal value As String)
                _value = value
            End Set
        End Property

        Public Overrides Function Equals(ByVal obj As Object) As Boolean
            Return Equals(TryCast(obj, ConfigKey))
        End Function

        Public Overloads Function Equals(ByVal other As ConfigKey) As Boolean _
        Implements IEquatable(Of ConfigKey).Equals
            If other Is Nothing Then
                Return False
            End If

            Return _handlerId = other.HandlerId And _resourceKey.Equals(other.ResourceKey) And _configType = other.ConfigType
        End Function

    End Class

End Namespace

1 个答案:

答案 0 :(得分:6)

你没有方法。

这是参数化属性,C#不支持。

您的代码没有直接翻译成C# 相反,您应该创建一个返回Dictionary<string, ConfigKey>

的常规属性