最佳答案
可能的复制品:
C #-有没有比这更好的选择来“打开类型”?
如果你想对一类对象使用 switch
,最好的方法是什么?
private int GetNodeType(NodeDTO node)
{
switch (node.GetType())
{
case typeof(CasusNodeDTO):
return 1;
case typeof(BucketNodeDTO):
return 3;
case typeof(BranchNodeDTO):
return 0;
case typeof(LeafNodeDTO):
return 2;
default:
return -1;
}
}
我知道事情不是这样的,但我想知道你是怎么解决这个问题的。
在这种情况下使用 if/else
语句合适吗?
还是使用开关将 .ToString()
添加到类型中?