mvc html.radiobutton,asp.net mvc-将枚举传递给html.radiobuttonfor MVC3

博主在尝试使用枚举`ActionStatus`在ASP.NET MVC的编辑视图中创建单选按钮组时遇到问题。视图正确显示了枚举选项,但无法保存选中的状态到数据库。在创建控制器动作中初始化了默认值,但在编辑时选择的枚举值没有被持久化。目前寻求解决方案,特别是是否需要扩展方法来实现这一功能。
摘要由CSDN通过智能技术生成

我有一个名为ActionStatus的枚举,该枚举有2个可能的值open = 0和closed = 1

public enum ActionStatus

{

Open,

Closed

}

我想在我的编辑中构建单选按钮组,并创建使用枚举填充以下单选按钮的视图:a)创建视图中的默认值,b)编辑视图中当前选择的选项。

我是否需要一种扩展方法,并且有人已经创建了吗?

编辑:以下达林斯的答案后,这是我的模型类

namespace Actioner.Models

{

[MetadataType(typeof(MeetingActionValidation))]

public class MeetingAction

{

[Key]

public int MeetingActionId { get; set; }

[Required]

[Display(Name = "Description")]

public string Description { get; set; }

[Required]

[Display(Name = "Review Date")]

public DateTime ReviewDate { get ;set; }

public int Status{ get; set; }

[ScaffoldColumn(false)]

public int MeetingId { get; set; }

//public virtual Meeting Meeting { get; set; }

//public virtual ICollection Users { get; set; }

public virtual ICollection ActionUpdates { get; set; }

public MeetingActionStatus ActionStatus { get; set; }

}

public enum MeetingActionStatus

{

Open,

Closed

}

这是我的看法

@model Actioner.Models.MeetingAction

@using Actioner.Helpers

@Html.LabelFor(model => model.Description)

@Html.EditorFor(model => model.Description)

@Html.ValidationMessageFor(model => model.Description)

@Html.LabelFor(model => model.ReviewDate)

@Html.EditorFor(model => model.ReviewDate)

@Html.ValidationMessageFor(model => model.ReviewDate)

@Html.LabelFor(model => model.Status)

@Html.RadioButtonForEnum(x => x.ActionStatus)

这是我的创建控制器动作

public virtual ActionResult Create(int id)

{

var meetingAction = new MeetingAction

{

MeetingId = id,

ReviewDate = DateTime.Now.AddDays(7)

};

ViewBag.Title = "Create Action";

return View(meetingAction);

}

枚举在视图中显示正常,但是当前选择的选项未持久保存到数据库中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值