Asp.net mvc 如何将复选框选项列表映射到模型第一类?

Asp.net mvc 如何将复选框选项列表映射到模型第一类?,asp.net-mvc,Asp.net Mvc,我的web表单中有以下选项列表: 我想先和模特合作。但我对MVC和Model first很在行,所以我不知道如何在我的Model类中更好地表示这一点 我应该为每个项目制作一个属性吗?或者我应该创建一个数组,其中每个位置都是一个选项(可能使用enum) 您应该有一个类CompartamentoViewModel,如下所示: public class CompartamentoViewModel { public int Id { get; set; } public string

我的web表单中有以下选项列表:

我想先和模特合作。但我对MVC和Model first很在行,所以我不知道如何在我的Model类中更好地表示这一点

我应该为每个项目制作一个属性吗?或者我应该创建一个数组,其中每个位置都是一个选项(可能使用
enum


您应该有一个类
CompartamentoViewModel
,如下所示:

public class CompartamentoViewModel
{
    public int Id { get; set; }
    public string Description { get; set; }
}
然后,在主视图模型中:

public class MyViewModel
{
    // List of all objects for the view
    public List<CompartamentoViewModel> Compartamentos { get; set; }

    // List of ints to retrieve selected values
    public List<int> SelectedCompartamentos { get; set; }
}
公共类MyViewModel
{
//视图的所有对象的列表
公共列表Compartamentos{get;set;}
//用于检索选定值的整数列表
公共列表SelectedCompartamentos{get;set;}
}
在视图中,使用文字说明和值ID。在帖子中,用所选ID列表填充
SelectedCompartamentos


免责声明:我不知道如何使“Compartamento”多元化。

Compartamento=Behavior;复数=Compartamentos:在这种情况下,您正在将Comportamento转换为一个表,对吗?但我不确定我是否希望将其放在不同的表中(目前)。我上面的示例是视图模型的结构,这与数据模型不同。对于数据模型,我将按照以下教程将枚举映射到查找表:。除非你有充分的理由,否则没有必要把它弄得比这更复杂。
public class MyViewModel
{
    // List of all objects for the view
    public List<CompartamentoViewModel> Compartamentos { get; set; }

    // List of ints to retrieve selected values
    public List<int> SelectedCompartamentos { get; set; }
}