如何使用ASP.NET MVC中的Razor将变量值插入到文本框中

时间:2018-02-13 02:48:26

标签: asp.net-mvc razor

以下是ASP.NET MVC的Razor标记语言中我的文本框的代码:

<div class="form-group">
    @Html.LabelFor(m => m.FullName, new { @class = "col-md-2 control-label" })
    <div class="col-md-10">
        @Html.TextBoxFor(m => m.FullName, new { @class = "form-control" })
    </div>
</div>

目前,当用户首次导航到该页面时,该文本框为空。

但是,当用户首次导航到该页面时,我希望文本框中填充m.FullName的值。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:0)

我认为您可以使用此EditorFor获得相同的结果:

  @Html.EditorFor(m => m.FullName, new { htmlAttributes = new { @class = "form-control", @value="full name here" } })

TextBox和Editor在这种情况下几乎完全相同!我这里没有区别!

答案 1 :(得分:0)

答案最终正是评论者的建议。具体做法是:

public class MyController : Controller
{
    public ActionResult Edit(string id)
    {
        // Edit the Microsoft GraphServiceClient user first ...

        // Here is where I went wrong - I didn't pass in myEditedUser
        return View("Edit", myEditedUser);
    }
}

现在在Edit.cshtml中,以下代码行是第一行(请注意,我使用的是继承自ExtendedUser的{​​{1}}对象:

Microsoft.Graph.User

与评论者建议的情况一样,我不必对@model MyProjectName.Models.ExtendedUser @LabelFor代码进行任何更改,但我只需要将@TextBoxFor返回给视图。