CheckBoxList para tipos Enum MVC Razor

No meu aplicativo c # .net MVC eu gostaria de exibir a lista de checkbox para tipos Enum.

Eu tenho um tipo de enum

[Flags]
public enum ModeType
{
Undefined = 0,
Read= 1,
Edit= 2
  }

e meu modelo é

Public TrainingModel
   {
         public int UserID {get;set;}
         public ModeType Type {get;set}
   }

Na minha opinião eu preciso de dois checkbox one para Read e outro para Edit Então eu tentei

    @Html.CheckBoxFor(m => m.Type== ModeType.Read)
@Html.CheckBoxFor(m => m.Type== ModeType.Edit)

Mas isso me dá um erro "Os modelos podem ser usados ​​apenas com acesso de campo, acesso a propriedades, índice de matriz de dimensão única ou expressões de indexador personalizado de parâmetro único."

Eu trabalhei em torno deste problema, adicionando mais duas propriedades ao meu modelo

 Public TrainingModel
   {
         public int UserID {get;set;}
         public ModeType Type {get;set}
         public bool IsRead
         {
           get{Type.HasFlag(ModeType.Read);}
           set{Type |=ModeType.Read;}
         }
         public bool IsEdit
         {
           get{Type.HasFlag(ModeType.Edit);}
           set{Type |=ModeType.Edit;}
         }

   }

e, em seguida, fazendo a minha opinião

@Html.CheckboxFor(m => m.IsRead)
@Html.CheckboxFor(m => m.IsEdit)

Eu sei que a maneira que eu tenho abordado não é correta e deve haver uma maneira melhor de conseguir isso. Alguém poderia por favor me avisar sobre isso.

questionAnswers(1)

yourAnswerToTheQuestion