铸造string来枚举
我正在阅读文件内容,并采取像这样的确切位置的string
string fileContentMessage = File.ReadAllText(filename).Substring(411, 3);  输出将始终为“ Ok或“ Err 
 另一方面,我有这样的ContentEnum MyObject 
 public class MyObject { public enum ContentEnum { Ok = 1, Err = 2 }; public ContentEnum Content { get; set; } } 
 现在,在客户端我想使用这样的代码(将我的stringfileContentMessage为Content属性) 
 string fileContentMessage = File.ReadAllText(filename).Substring(411, 3); MyObject myObj = new MyObject () { Content = /// ///, }; 
	
 使用Enum.Parse() 。 
 var content = (ContentEnum)Enum.Parse(typeof(ContentEnum), fileContentMessage); 
看看使用类似的东西
Enum.TryParse
将一个或多个枚举常量的名称或数值的string表示forms转换为等效的枚举对象。 参数指定操作是否区分大小写。 返回值指示转换是否成功。
要么
Enum.Parse
将一个或多个枚举常量的名称或数值的string表示forms转换为等效的枚举对象。
 作为一个额外的,你可以采取已经提供的Enum.Parse答案,并把它们放在一个辅助类中的一个易于使用的静态方法。 
 public static T ParseEnum<T>(string value) { return (T)Enum.Parse(typeof(T), value, ignoreCase: true); } 
像这样使用它:
 { Content = ParseEnum<ContentEnum>(fileContentMessage); }; 
特别有用的,如果你有很多(不同的)枚举来parsing。
.NET 4.0+有一个通用的Enum.TryParse
 ContentEnum content; Enum.TryParse(fileContentMessage, out content);