2009-10-19 76 views
0

我想將這段代碼從csharp轉換爲vb。使用免費csharp的所有孩子vb轉換器,但得到一個錯誤。請讓知道是否有人解決過這個問題。twitter oauth icomparer錯誤

錯誤:

類 'QueryParameterComparer' 必須實現 '功能比較(X作爲OAuthBase.QueryParameter,Y如OAuthBase.QueryParameter)作爲整數' 的界面 'System.Collections.Generic.IComparer(OF QueryParameter)'

從C#代碼:

protected class QueryParameterComparer : IComparer<QueryParameter> 
    { 

     public int Compare(QueryParameter x, QueryParameter y) 
     { 
      if (x.Name == y.Name) 
      { 
       return string.Compare(x.Value, y.Value); 
      } 
      else 
      { 
       return string.Compare(x.Name, y.Name); 
      } 
     } 

    } 

到VB代碼

Protected Class QueryParameterComparer 
     Implements IComparer(Of QueryParameter) 

     #Region "IComparer Members" 

     Public Function Compare(ByVal x As QueryParameter, ByVal y As QueryParameter) As Integer 
      If x.Name = y.Name Then 
       Return String.Compare(x.Value, y.Value) 
      Else 
       Return String.Compare(x.Name, y.Name) 
      End If 
     End Function 

     #End Region 
    End Class 

回答

1

嘗試在每個參數類型前面粘貼OAuthBase.

或者使用OAuth庫(如DotNetOpenAuthLinqToTwitter),因此您不必擔心。 :)

+0

oAuthBase工作。謝謝 – vamsivanka 2009-10-19 14:44:00

+0

我之前做過,但我必須添加到實現IComparer(Of oAuthBase.QueryParameter) – vamsivanka 2009-10-19 14:45:29

-1
Public Function Compare(ByVal x As OAuth.QueryParameter, ByVal y As OAuth.QueryParameter) As Integer _ 
    Implements IComparer(Of QueryParameter).Compare 
1

在函數聲明

器具的IComparer(中QueryParameter).Compare

的末尾添加此這樣的話它的:

Public Function Compare(ByVal x As QueryParameter, ByVal y As QueryParameter) As Integer Implements IComparer(Of QueryParameter).Compare 
     If (x.Name = y.Name) Then 
      Return String.Compare(x.Value, y.Value) 
     Else 
      Return String.Compare(x.Name, y.Name) 
     End If 
    End Function