该调用是模糊的MVC ViewBag隐藏输入

时间:2012-09-12 04:56:06

标签: asp.net-mvc viewbag

我的应用程序是asp.net我使用以下命令将控制器中的变量传递给视图:

 public ActionResult Create(long? learnerID)
    {
        learnerID = 211;
        ViewBag.learnerID = learnerID.Value;
        return View();
    }

在视图中:

 <input type="text" value="<%=  ViewBag.learnerID %>" id="Learner_ID" name="Learner_ID" />

值211显示在表单中,我可以保存它,但是如果我将输入类型更改为隐藏或使用style =“display:none”,我会收到以下错误:

The call is ambiguous between the following methods or properties: 'System.IO.TextWriter.Write(string, params object[])' and 'System.IO.TextWriter.Write(char[])'

非常感谢您的建议。提前谢谢。

2 个答案:

答案 0 :(得分:1)

尝试添加对ToString()的调用

<input type="text" value="<%=  ViewBag.learnerID.ToString() %>" id="Learner_ID" name="Learner_ID" />

答案 1 :(得分:1)

使用&lt;%= HtmL.Hidden(“Learner_ID”,ViewBag.learnerID)%&gt;。 但最好使用强类型视图并键入Html.HiddenFor(m =&gt; m.LearnerID)