【发布时间】:2015-07-31 11:31:02
【问题描述】:
我收到错误:Class 'QueryParameterComparer' must implement 'Function Compare(x As QueryParameter, y As QueryParameter) As Integer' for interface 'System.Collections.Generic.IComparer(Of QueryParameter)'.
关于这个类的定义:
Protected Class QueryParameterComparer
Implements IComparer(Of QueryParameter)
Public Function Compare(x As QueryParameter, 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 Class
我也试过完整地写出来:
Protected Class QueryParameterComparer
Implements System.Collections.Generic.IComparer(Of QueryParameter)
Public Function Compare(x As QueryParameter, 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 Class
我错过了什么?
【问题讨论】:
-
接口方法实现需要Implements关键字。就让IDE帮你跌入成功的坑。删除Function,将光标放在Implements yadayada 行后按回车键。
-
哇!我以前从未见过这种情况!我只是将其标记为重复,然后我意识到您是几年前提出重复问题的人。好笑……
-
@StevenDoggart:哈哈! :S 有些人永远学不会? :) 不能再删除这个帖子了....
标签: vb.net class interface interface-implementation