我试图将以下的VB.NET转换为C#:
Dim langs As New List(Of LanguageEnum)(System.Enum.GetValues(GetType(LanguageEnum)))
Run Code Online (Sandbox Code Playgroud)
我最终得到了以下翻译,但这不起作用:
List<LanguageEnum> langs = new List<LanguageEnum>(System.Enum.GetValues(typeof(LanguageEnum)));
Run Code Online (Sandbox Code Playgroud)
- >"最好的重载方法匹配{...}有一些无效的参数." 即使是http://www.developerfusion.com/tools/convert/vb-to-csharp/也会给我这个翻译.怎么了?
你必须施展它:
List<LanguageEnum> langs = new List<LanguageEnum>((LanguageEnum[]) System.Enum.GetValues(typeof(LanguageEnum)));
Run Code Online (Sandbox Code Playgroud)
事实上,Enum.GetValues 返回一个Array.