正在分配变量枚举值
本文关键字:枚举 变量 分配 | 更新日期: 2023-09-27 18:26:43
我有以下枚举
public enum Outcome
{
DontKnow = 0,
Good = 1,
Bad = 2,
NotBad = 3
}
在我的Results类中,我有一个带有以下枚举的属性:
public class Result
{
public int Id { get; set; }
public string Name { get; set; }
public Outcome FinalOutcome { get; set; }
}
当我使用SqlDataReader从数据库中读取数据时,如何分配其值?
while(reader.Read())
{
Id = Convert.IsDbNull(reader[0]) ? Convert.ToInt32(0) : Convert.ToInt32(reader[0]);
Name = Convert.IsDbNull(reader[1]) ? string.Empty : reader[1].ToString();
FinalOutcome = Convert.IsDbNull(reader[2]) ? WhatGoesHere? : WhatGoesHere?;
}
while(reader.Read())
{
Id = Convert.IsDbNull(reader[0]) ? Convert.ToInt32(0) : Convert.ToInt32(reader[0]);
Name = Convert.IsDbNull(reader[1]) ? string.Empty : reader[1].ToString();
FinalOutcome = Convert.IsDbNull(reader[2]) ? FinalOutcome.DontKnow : (Outcome) Convert.ToInt32(reader[2]);
}
假设您的源列是一个可以为null的int:
FinalOutcome = !Convert.IsDbNull(reader[2]) ?(OutCome)reader[2] : (OutCome)0;