有趣的Asp .net mvc例子

时间:2012-07-24 20:39:46

标签: asp.net-mvc

我正在尝试下面解释的基本asp .net mvc项目配置;

在首次提交之前,结果会在照片中保留一个,在提交文本框(@Html.TextBoxFor(model => model.Name))之后,文本(@Model.Name)显示不同的值,如照片右侧所示,意外;为什么会这样?尽管它们的模型是独一无二的,但它们显示出不同的值。

enter image description here

型号:

 public class Personnel
{
    public string Name { get; set; }
}

查看:

@model deneme.Models.Personnel

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>


@using (Html.BeginForm("Index", "Home"))
{
    @Html.TextBoxFor(model => model.Name)

    <br/>
    <br/>

    @Model.Name

    <br/>
    <br/>

    <input type="submit" value="submit" />
}

控制器:

public ActionResult Index(Personnel personnel)
{
     if (string.IsNullOrEmpty(personnel.Name))
     {
         personnel.Name = "Ahmet";
     }
     else
     {
         personnel.Name = personnel.Name + "server";
     }

     return View(personnel);
}

1 个答案:

答案 0 :(得分:0)

修改:我以前的回答没有回答你的问题。

如果您将ModelState.Clear()添加到控制器操作中,它将按您的意愿运行。

public ActionResult Index(Personnel personnel)
{
     if (string.IsNullOrEmpty(personnel.Name))
     {
         personnel.Name = "Ahmet";
     }
     else
     {
         personnel.Name = personnel.Name + "server";
     }

     ModelState.Clear();
     return View(personnel);
}