在VB中
Protected Overridable ReadOnly Property AuthorizationHeaderValue(ByVal signature As String) As String
Get
Return String.Format("{0} {1}:{2}", AuthorizationHeaderSignaturePrefix, APIIdentifier, signature)
End Get
End Property
我在C#中有什么:
protected virtual string AuthorizationHeaderValue
{
get { return string.Format("{0} {1}:{2}", AuthorizationHeaderSignaturePrefix, APIIdentifier, signature); }
}
我在C#中收到此错误:
当前上下文中不存在“签名”这个名称......
对我而言似乎是显而易见的,因为当我转换代码时,它会删除(ByVal signature as String
)。
想法?
答案 0 :(得分:3)
C#代码的问题在于属性主体需要变量 signature ,但是您没有定义具有该名称的变量。
C#不允许属性具有VB.Net所具有的参数(每个类只有一个indexer)。考虑将其转换为方法。
protected virtual string AuthorizationHeaderValue(string signature)
{
return string.Format("{0} {1}:{2}", AuthorizationHeaderSignaturePrefix,
APIIdentifier, signature);
}