所以我正在编写一个来自前任的代码,我为一个方法写了一个重载。方法为TryGetValue
,它有三个参数:string
,out long
和long
。它之前也超载了string
,out string
和string
。
我为它添加了三个重载:一个带有两个参数:一个string
和一个out long
。另一个是string
和out string
。最后一个采用string
和T
,一个通用。
他们都工作。但是,在我告诉它构建之后,Visual Studio有时会给我错误,并说#34;方法' TryGetValue'这需要2个参数。"
但是,当我打开包含这些方法的类时,即使在我关闭该类之后,错误也会消失一段时间。
我尝试清理解决方案并重建解决方案。一段时间后它仍然会回来。
致电:bool foo = id.TryGetValue("key_id", out keyid);
其中keyid
是long
。 id
是DictionaryID
,其中包含TryGetValue
方法。
原始方法之一:
public bool TryGetValue(string key, out long value, long defaultValue)
{
// do stuff
return true;
}
和其中一个重载:
public bool TryGetValue(string key, out long value)
{
return TryGetValue(key, out value, 0);
}
就像我说的那样,它的工作方式与我的期望相同,但VS有时会告诉我它无法找到它。