gpt4 book ai didi

c# - 无法将字符串转换为枚举

转载 作者:行者123 更新时间:2023-11-30 20:56:14 25 4
gpt4 key购买 nike

我需要制作一个适配器类。

trip.Resource 是一个名为 ModalityResource 的枚举。

transportOrderTrip.ModalityResource 是一个字符串。

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。在 .NET 4 或更新版本中,您还可以使用函数的通用重载。

trip.Resource = (ModalityResource)Enum.Parse(typeof(ModalityResource), transportOrderTrip.ModalityResource, true);

另见

http://msdn.microsoft.com/en-us/library/dd783499.aspx

关于c# - 无法将字符串转换为枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17651867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com