相关疑难解决方法(0)

我对Html.TextBoxFor如何工作有什么误解?

我只是想尝试使用新版本重新进入.NET MVC,我无法理解视图是否绑定到DataModel.

我有一个带有属性"first_name"的模型,在HTML表单中我有以下内容

<%= Html.TextBox("first_name", Model.first_name)%>
<%= Html.TextBoxFor(model => model.first_name) %> 
<input type="text" name="first_name" id="first_name" class="myLabel" 
       value="<%=Model.first_name %>" />
Run Code Online (Sandbox Code Playgroud)

在控制器上的操作中,如果我在模型上设置first_name属性并执行此操作

mymodelObject.first_name = "Test";
return View(mymodelObject);
Run Code Online (Sandbox Code Playgroud)

是什么原因只有第三个文本框获取此first_name值而另外两个没有?

编辑:

对不起,我可能还没有解释得这么好.想象一下,我有2个控制器方法 -

public ActionResult Register()
{
    Registration model = new Registration();
    model.first_name = "test";
    return View(model);
}
Run Code Online (Sandbox Code Playgroud)

有了这个,任何一个绑定工作.

在显示之后,我单击表单上的一个按钮,然后尝试运行:

[HttpPost]
public ActionResult Register(Registration_ViewData model)
{
    model.first_name = "Steve";
    return View(model);
}
Run Code Online (Sandbox Code Playgroud)

我问的是为什么第3个而不是第2个以"Steve"作为新名称.

asp.net asp.net-mvc

8
推荐指数
2
解决办法
9624
查看次数

Html.TextBox使用Request.Params而不是Model吗?

我有一个简单的测试应用程序:

模型:

public class Counter
{
    public int Count { get; set; }

    public Counter()
    {
        Count = 4;
    }
}
Run Code Online (Sandbox Code Playgroud)

控制器:

public class TestController : Controller
{
    public ActionResult Increment(Counter counter)
    {
        counter.Count++;
        return View(counter);
    }
}
Run Code Online (Sandbox Code Playgroud)

视图:

<form action="/test/increment" method="post">
    <input type="text" name="Count" value="<%= Model.Count %>" />
    <input type="submit" value="Submit" /> 
</form>
Run Code Online (Sandbox Code Playgroud)

单击提交我得到这样的值:

5,6,7,8 ......

使用Html.TextBox我期望相同的行为

<form action="/test/increment" method="post">
    <%= Html.TextBox("Count") %>
    <input type="submit" value="Submit" /> 
</form>
Run Code Online (Sandbox Code Playgroud)

但实际上得到了

5,5,5,5.

似乎Html.TextBox使用Request.Params而不是Model?

asp.net-mvc html-helper

5
推荐指数
1
解决办法
1471
查看次数

标签 统计

asp.net-mvc ×2

asp.net ×1

html-helper ×1