C# 扩展方法上的不明确调用
我在我的项目上有一个很好的扩展方法:C# 扩展方法上的不明确调用,c#,C#,我在我的项目上有一个很好的扩展方法: public static class Extensions { public static bool IsBetween<T>(this T value, T low, T high) where T : IComparable<T> { return value.CompareTo(l
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;
}
}
我想知道我是否把这些数字翻了一番,这样是否能解决问题。我马上就去试试。比如:
if (percentCash.IsBetween((double)0, (double)99))
更有可能的是,您引用的DLL定义了相同的扩展方法,或者在代码中的其他地方定义了相同的扩展方法。尝试在文件中查找
IsBetween
并查看是否出现。如果没有,请查看您引用的DLL,并查看其中一个DLL中是否不存在此扩展。刚刚注意到方法签名在“where t”之后缺少“IComparable”:这是我在添加问题时的一个拼写错误,但它在代码中。请尝试注释扩展,然后看看intellisence是否仍然能够解决一些IsBetween
方法也许您从多个DLL中引用了此扩展。您可以在呼叫站点发布代码吗?刚刚为您添加的Frederic。谢谢
if (percentCash.IsBetween((double)0, (double)99))