c# - 从数据库中获取整数值并将其转换为 Enum

标签 c# enums

我对 Enum 类型很陌生,似乎我无法在我的项目中弄清楚一些事情。我被要求使用 Enum 创建具有预定义值的组合框。我所做的是:

namespace Models
{
    public class LastStatus
    {
        public LastStatus()
        {
        }

        public int ID { get; set; }
        public enum description { inProgress, done, accepted }

        public description desc;
        public int constant { get; set; }

    }
}

这是我在使用数据库模型之前将它们转换为我自己的模型的方法:(例如,将它们添加到列表中,然后迭代它以添加到 aspx.cs 端的组合框的列表项中)

private Models.LastStatus ConvertStatusDbToObject(DBModel.myDB.LastStatu status)
        {
            Models.LastStatus statusObject = new Models.LastStatus();
            statusObject.ID = status.ID;
            //statusObject.description = status.description;
            (LastStatus.description)statusObject.desc = (LastStatus.description)status.@const;
            statusObject.constant = status.@const;

            return statusObject;
        }

我在这一行收到错误:

(LastStatus.description)statusObject.desc = (LastStatus.description)status.@const;

当尝试将数据库模型的整数值转换为我的枚举类型时。 desc 不是一个属性吗?

Error 23 The left-hand side of an assignment must be a variable, property or indexer

最佳答案

更改(LastStatus.description)statusObject.desc = (LastStatus.description)status.@const;statusObject.desc = (LastStatus.description)status.@const;

您不需要强制转换属性本身!

关于c# - 从数据库中获取整数值并将其转换为 Enum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31579193/

相关文章:

c# - Excel 打印预览

c# - 在 C# 中编码到 native 库

json - Dart:从字符串中获取枚举?

ruby - 如何从 Rails 中的枚举值中获取键名?

c# - 如何从云 Web 服务中访问文件?

c# - 我怎样才能加快这些 linq 查询?

c# - 使用字符串的依赖注入(inject)(ninject),反模式?

c# - 带描述的枚举字符串

c - 将字符串映射到枚举值

c# - 动态地将 INT 值设置为 Nullable 枚举属性,无需显式类型转换