我的项目上有一个工作正常的扩展方法:
public static class Extensions
{
public static bool IsBetween<T>(this T value, T low, T high)
where T : IComparable<T>
{
return value.CompareTo(low) >= 0 && value.CompareTo(high) <= 0;
}
}
现在,当我尝试构建项目时,我收到此错误:
错误1699以下方法或之间的调用不明确 特性: 'BillingFormsApplication.Extensions.IsBetween(double,double, 双)'和 'BillingFormsApplication.Extensions.IsBetween(double,double, 双)'
IsBetween
文件中只有一个Extensions
方法...在整个解决方案中只有一个IsBetween
方法。
我尝试清理并重建解决方案。仍然得到错误。
我可以移除扩展并继续前进,但它在过去非常方便。
为Frederic添加:
if (percentCash.IsBetween(0, 99))
{
我想知道如果能解决这个问题,我是否将这些数字转换为Double。我会在一分钟内尝试一下。像:
if (percentCash.IsBetween((double)0, (double)99))
答案 0 :(得分:2)
很可能,您正在引用一个已定义相同扩展方法的DLL,或者您在代码中的其他位置定义了此DLL。尝试在文件中查找IsBetween
,然后查看是否出现。如果没有,请查看您引用的DLL,并查看其中一个扩展名是否存在。