C#技术-通过字符串获取常量值

C#技术-通过字符串获取常量值,c#,.net,excel,vsto,constants,C#,.net,Excel,Vsto,Constants,有没有什么好方法可以将“xlSum”、“xlAverage”和“xlCount”等字符串转换为它们在Microsoft.Office.Interop.Excel.XlConsolidationFunction下的值 我想反射会很慢(如果可能的话)。其中大约有10个常量值。如果可能的话,我试图避免使用大的switch语句。您可以使用字典来代替switch,并在应用程序启动时填充一次它。这是一个枚举,因此您应该能够使用 using Microsoft.Office.Interop.Excel; X

有没有什么好方法可以将“xlSum”、“xlAverage”和“xlCount”等字符串转换为它们在Microsoft.Office.Interop.Excel.XlConsolidationFunction下的值


我想反射会很慢(如果可能的话)。其中大约有10个常量值。如果可能的话,我试图避免使用大的switch语句。

您可以使用
字典来代替switch,并在应用程序启动时填充一次它。

这是一个枚举,因此您应该能够使用

using Microsoft.Office.Interop.Excel;

XlConslidationFunction func = (XlConsolidationFunction)
                               Enum.Parse( typeof(XlConsolidationFunction),
                                           stringVal );

您需要在“=”和“Enum”之间进行强制转换,但要+1thx。我从未使用as语法,但我试图使post.Enum.Parse()更美观-我想我以前从未遇到过这个问题。美好的