在viewModel中,我为一年中的不同月份创建了一个枚举,并创建了一个类的属性。
public class Lists
{
public enum Months
{
Jan = 0,
Feb = 1,
Mar = 2,
Apr = 3,
May = 4,
Jun = 5,
Jul = 6,
Aug = 7,
Sep = 8,
Oct = 9,
Nov = 10,
Dec = 11
}
public object Month { get; set; }
public bool isChecked { get; set; }
在控制器中,我创建了一个对象列表,并尝试使用GetValues方法将月份名称添加到该列表中。
public class SchedulerController : Controller
{
// GET: Scheduler
[HttpGet]
public ActionResult schedulerIndex()
{
List<Lists> lst = new List<Lists>();
lst.Add(new Lists { Month = Enum.GetValues(typeof(Lists.Months)), isChecked = false });
然后我创建了一个视图,我尝试添加一个核对表框。但是,当我尝试运行webapp时,复选框中显示的所有内容都是system.string []。
如何让它显示名称?
答案 0 :(得分:0)
尝试这样的事情:
Enum.GetNames(typeof(Lists.Months)).OfType<string>()
.ForEach(m => lst.Add(new Lists { Month = m, isChecked = false });
答案 1 :(得分:0)
这解决了这个问题。我创建了一个foreach循环,将枚举的每个值添加到列表中。
foreach (Lists.Months month in Enum.GetValues(typeof(Lists.Months)))
{
lst.Add(new Lists { Month = month, IsChecked = false });
}