我有一个 switch 语句,它一遍又一遍地执行一些逻辑。而不是使用剪切和粘贴,我想将它放入一个函数中,但我在这方面失败了。
这是我想要做的,但它没有编译,因为函数中的 break 标记不存在。任何人都可以将其重构为更好的工作版本吗?
switch(param.ToString())
{
case "1":
BreakIfNotArgumentType<B>(param);
//do stuff
break;
case "2":
BreakIfNotArgumentType<BF>(param);
//do stuff
break;
}
private T BreakIfNotArgumentType<T>(object argumentObject)
{
if (argumentObject is T)
{
return (T)argumentObject;
}
else
{
break;
}
}