C# 无法将字符串转换为枚举
我需要创建一个适配器类 Resource是一个名为ModalityResource的枚举 transportOrderTrip.ModalityResource是一个字符串C# 无法将字符串转换为枚举,c#,enums,C#,Enums,我需要创建一个适配器类 Resource是一个名为ModalityResource的枚举 transportOrderTrip.ModalityResource是一个字符串 if(Enum.IsDefined(typeof(ModalityResource), transportOrderTrip.ModalityResource)) trip.Resource = Enum.Parse(typeof(ModalityResource), transportOrderTrip.Modal
if(Enum.IsDefined(typeof(ModalityResource), transportOrderTrip.ModalityResource))
trip.Resource = Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);
此处ModalityResource的可能值:
public enum ModalityResource { NONE, CHASSIS, TRAILER }
我得到的错误是:无法将类型“object”隐式转换为“ModalityResource”。任何人都可能知道出了什么问题
编辑:没关系,我有点困惑
trip.Resource = (ModalityResource) Enum.Parse(typeof (Shared.Interfaces.ModalityResource), transportOrderTrip.ModalityResource, true);
您必须将
Enum.Parse
的结果强制转换为ModalityResource
。
在.NET4或更新版本中,您还可以使用函数的通用重载
trip.Resource = (ModalityResource)Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);
另见
您必须将
Enum.Parse
的结果强制转换为ModalityResource
。
在.NET4或更新版本中,您还可以使用函数的通用重载
trip.Resource = (ModalityResource)Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);
另见
您需要演员阵容
Enum.Parse method returns object
将代码更改为以下内容
(ModalityResource)Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);
你需要演员阵容
Enum.Parse method returns object
将代码更改为以下内容
(ModalityResource)Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);
您需要将其强制转换为所需的
Enum
类型,因为返回类型是object
(ModalityResource) Enum.Parse(typeof(ModalityResource),
transportOrderTrip.ModalityResource, true);
在上,您需要将其强制转换为所需的
Enum
类型,因为返回类型是object
(ModalityResource) Enum.Parse(typeof(ModalityResource),
transportOrderTrip.ModalityResource, true);
在上,即使你自己想出了答案,你仍然应该接受答案-然后自己写一个答案并接受它。即使你自己想出了答案,你仍然应该接受答案-然后自己写一个答案并接受它。