我对 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/