C# 从包含枚举的api反序列化模型

C# 从包含枚举的api反序列化模型,c#,asp.net-mvc,enums,ef-code-first,deserialization,C#,Asp.net Mvc,Enums,Ef Code First,Deserialization,我们正在使用ASP.NETMVC5C开发一个web应用程序,我很难找到解决问题的好方法 我们正在访问一个api,它有一些枚举以文本形式出现,例如,是,否,notfound,na在模型本身上我想让强类型枚举以整数形式存储在数据库中,以节省一点空间。我认为当我们反序列化来自api的响应时,问题会出现。在响应中,它将显示为文本,如上文所示,其中作为枚举,它将需要一个整数 这是怎么做到的?我真的很讨厌问那些我没有尝试过但我的网络搜索没有结果的问题。如果您需要任何代码,请让我知道,我会用所需的部分更新问题

我们正在使用ASP.NETMVC5C开发一个web应用程序,我很难找到解决问题的好方法

我们正在访问一个api,它有一些枚举以文本形式出现,例如,是,否,notfound,na在模型本身上我想让强类型枚举以整数形式存储在数据库中,以节省一点空间。我认为当我们反序列化来自api的响应时,问题会出现。在响应中,它将显示为文本,如上文所示,其中作为枚举,它将需要一个整数

这是怎么做到的?我真的很讨厌问那些我没有尝试过但我的网络搜索没有结果的问题。如果您需要任何代码,请让我知道,我会用所需的部分更新问题。到目前为止,该模型有几个强类型枚举,api正在返回枚举值的字符串。顺便说一下,枚举文本与返回值相同

如果有任何不同,我们也使用EF Code First 6

您可以使用Enum.TryParse将字符串转换为其枚举值

public enum MyEnum
{
  NA
  Yes,
  No
}
然后


有什么帮助吗?@LosManos谢谢你的链接。我已经知道EF6与枚举一起工作。我的问题是api响应的反序列化。它不为枚举传输int。它返回枚举文本Yes、No、NotFound等
MyEnum value = MyEnum.NA;
Enum.TryParse<MyEnum>(theTextValue, out value );