【发布时间】:2019-05-18 20:13:35
【问题描述】:
我正在使用这段代码,它给了我一个错误,说它不能将 void 转换为 int:
private static int aBtn;
public static int ABtn
{
get => aBtn;
set => aBtn = CheckArgumentRange(nameof(value), value, 0, 5);
}
internal static void CheckArgumentRange(
string paramName, int value, int minInclusive, int maxInclusive)
{
if (value < minInclusive || value > maxInclusive)
{
throw new ArgumentOutOfRangeException(paramName, value,
$"Value should be in range [{minInclusive}-{maxInclusive}]");
}
}
谁能看到有什么问题以及为什么会出现此错误?
【问题讨论】:
-
set => aBtn应该设置一个int值,CheckArgumentRange()返回void。如果范围检查正常,则返回value,否则返回aBtn。 -
抱歉,这当然都是我的错。我将在另一个问题中编辑答案。
标签: c#