2

我在 c# 中有一个 case 语句。我想在运行时从配置文件中选择案例的值。这可能吗?

4

3 回答 3

2

不使用 switch 语句,不。案例标签必须是编译时常量。

Marc Gravell 有一个类似开关的构造,你可以在某个地方使用……我会试着找到它。不过,它可能不适合您的特定用途。

否则,一系列 if/else if/else if [...] /else 是要走的路。

于 2009-02-26T11:32:56.627 回答
0

由于 C# 中的 case 语句中使用的值应该是常量,我认为不可能在运行时从配置文件中设置这些值。

于 2009-02-26T11:41:01.087 回答
0

正如其他人所说,switch语句需要编译时的值,因为底层哈希表是在编译时构建的。如果您有在运行时确定的条目,如果我是您,我会使用带有命令模式或委托的哈希表/字典。

于 2009-02-26T11:47:00.480 回答