Resharper 自动完成错误的方法
Resharper autocompletes the wrong method
Resharper 正确建议并预选了我要完成的方法的通用版本。然而,在点击 'Enter' 之后,它会自动完成另一个方法。
错误方法完成
这怎么可能,我该如何解决?
Resharper 10.0.2
Visual Studio 社区 2015 更新 1
Unity 5.3.1f1
这不是错误的自动完成。
您在这里看到的是 ReSharper 的 2 个不同功能。
第一个是自动完成,它会显示可用的重载。
第二个(在您使用 Enter 接受之后)是您输入的参数的最佳候选者。
我不确定他们使用什么算法,但您可以通过创建 2 个这样的方法来模拟该行为。
public void Test(int val)
{
}
public void Test(string val)
{
}
您会注意到,根据您是键入数字还是开始键入 " 作为字符串,弹出窗口将切换到正确的重载。
要么是错误,要么是您的版本中不存在的功能,但 在 R# 9.2 中,行为符合您的预期。
因此,如果您使用的是 R# 10,则可以尝试使用当前许可证降级(如果您使用的是较低版本的 R#,则可以尝试升级,恕我直言,如果我记得的话,升级到更高版本是免费的嗯)。
顺便说一下,如果 MuhKuh 在 R#10 上是正确的,那么你唯一的选择就是键入“<YourType>
”,除非有一个隐藏的配置字段可以返回到旧版行为。
检查 here 所有可能的版本。
我最近遇到了这个问题,但是在 monodevelop 中,所以我不认为这是一个错误 - 我设法解决问题的唯一方法是仔细查看您的代码并重命名任何使用相同名称的代码您的方法(代码可以访问)。
我认为这是一个正确的智能感知。
这将划分两个条件。
map.AddComponent() :提示 AddComponent(Type) 和 AddComponent(string)
map.AddComponent() :提示 AddComponent()
你应该输入map.AddComponent来完成它
您似乎遇到了 the following YouTrack ticket 中描述的相同 R# 错误。此类问题已在 R# 10.1 分支中修复,并将在 ReSharper 10.1 版本中可用。
Resharper 正确建议并预选了我要完成的方法的通用版本。然而,在点击 'Enter' 之后,它会自动完成另一个方法。
错误方法完成
这怎么可能,我该如何解决?
Resharper 10.0.2
Visual Studio 社区 2015 更新 1
Unity 5.3.1f1
这不是错误的自动完成。 您在这里看到的是 ReSharper 的 2 个不同功能。
第一个是自动完成,它会显示可用的重载。 第二个(在您使用 Enter 接受之后)是您输入的参数的最佳候选者。
我不确定他们使用什么算法,但您可以通过创建 2 个这样的方法来模拟该行为。
public void Test(int val)
{
}
public void Test(string val)
{
}
您会注意到,根据您是键入数字还是开始键入 " 作为字符串,弹出窗口将切换到正确的重载。
要么是错误,要么是您的版本中不存在的功能,但 在 R# 9.2 中,行为符合您的预期。
因此,如果您使用的是 R# 10,则可以尝试使用当前许可证降级(如果您使用的是较低版本的 R#,则可以尝试升级,恕我直言,如果我记得的话,升级到更高版本是免费的嗯)。
顺便说一下,如果 MuhKuh 在 R#10 上是正确的,那么你唯一的选择就是键入“<YourType>
”,除非有一个隐藏的配置字段可以返回到旧版行为。
检查 here 所有可能的版本。
我最近遇到了这个问题,但是在 monodevelop 中,所以我不认为这是一个错误 - 我设法解决问题的唯一方法是仔细查看您的代码并重命名任何使用相同名称的代码您的方法(代码可以访问)。
我认为这是一个正确的智能感知。
这将划分两个条件。
map.AddComponent() :提示 AddComponent(Type) 和 AddComponent(string)
map.AddComponent() :提示 AddComponent()
你应该输入map.AddComponent来完成它
您似乎遇到了 the following YouTrack ticket 中描述的相同 R# 错误。此类问题已在 R# 10.1 分支中修复,并将在 ReSharper 10.1 版本中可用。