【发布时间】:2012-07-13 23:59:59
【问题描述】:
所以用这个例子来做一个复选框列表
它在我的创建(用于新注册)中工作正常,但在我的编辑中却没有,无法弄清楚为什么 我的班级:
public class cliente
{
[Key ,DatabaseGenerated(DatabaseGeneratedOption.None)]
public int id { get; set; }
[DisplayName("Nombre")]
[Required(ErrorMessage = "Descripcion es requerido.")]
[MaxLength(100, ErrorMessage = "El Nombre no puede contener mas de 100 caracteres")]
public string descripcion {get; set;}
[DisplayName("Visita")]
public string visita { get; set; }
public Dias DiasVisita { get; set; }
//more properties..
[Flags]//<-- Note the Flags attribute
public enum Dias
{
Lunes = 1,
Martes = 2,
Miercoles = 4,
Jueves = 8,
Viernes = 16,
Sabado = 32,
Domingo = 64,
}
我的看法。
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Cliente</legend>
@Html.HiddenFor(model => model.id)
@Html.HiddenFor(model => model.categoria)
@Html.HiddenFor(model => model.visita)
<div class="editor-label">
@Html.LabelFor(model => model.descripcion)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.descripcion, new { style = "width: 300px;" })
@Html.ValidationMessageFor(model => model.descripcion)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.visita)
</div>
<div class="editor-field">
@Html.CheckboxListForEnum("dias", Model.DiasVisita)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.orden)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.orden)
@Html.ValidationMessageFor(model => model.orden)
</div>
<p>
<input type="submit" value="Guardar" />
</p>
</fieldset>
}
当我按下按钮调试时控制器动作编辑器没有进入这里
[HttpPost]
public ActionResult Editar(cliente cliente, string[] dias)
{
}
当我按下按钮时,我怎么知道它的去向或寻找什么? 奇怪的是我的创作和这次编辑一样,但是创作工作
【问题讨论】:
-
如果你用 Firebug 在 Firefox 中运行它。如果您打开“网络”选项卡,当您按下按钮时它会尝试去哪里?
-
如果它们在同一区域,您是否尝试过 Html.BeginForm("ControllerName" , "Editar"),而不是纯 Html.BeginForm()?
标签: c# asp.net-mvc