检查枚举是否有一个等于字符串的字段

Bor*_*ens 16 c# enums

我有一个枚举

public enum FileExtentions {
    mp3,
    mpeg
}
Run Code Online (Sandbox Code Playgroud)

我有一个FileInfo,我想检查扩展名是否在上一个枚举中.我希望我能做到

FileExtensions.Any(e=>e.ToString().Equals(file.Extension));
Run Code Online (Sandbox Code Playgroud)

但那太棒了.有任何想法吗?

Kon*_*lph 30

Any...... 背后的原因是Equals什么?你有没有忽视Contains

bool result = Enum.GetNames(typeof(FileExtensions)).Contains("mp3");
Run Code Online (Sandbox Code Playgroud)


Bor*_*ens 8

在按下提交时我自己想到了答案:

Enum.GetNames(typeof(FileExtensions)).Any(f=>f.Equals("."+file.Extension))
Run Code Online (Sandbox Code Playgroud)