我正在使用此代码并且工作正常。
@Html.TextBox("myname", "somevalue", new { @class = "css-class", @onclick = "alert('demo');" id="mynewID"})
但是还有另一个重载:
HTMLHelper.Textbox(string name, object value, IDictionary<string,object> htmlattribute)
我正在使用:
@Html.TextBox("myname", "", new Dictionary<string, object> { { "id", "f","class","ds" } })
但是出现编译错误...请帮忙
答案 0 :(得分:1)
您获得的错误是由于字典初始值设定项中使用的语法不正确。如果将此代码添加到类并尝试编译,则可以轻松地看到:
var dict = new Dictionary<string, object> { { "id", "f", "class", "ds" } };
你会看到你收到错误:
方法“添加”没有重载需要4个参数
您需要将每个对象作为键值对传递给字典,如此代码中所示(请注意用大括号括起来的每个键值对):
var dict = new Dictionary<string, object> { { "id", "f" }, { "class", "ds" } };
所以你可以使用HtmlHelper的重载,如下例所示:
@Html.TextBox("myname", "", new Dictionary<string, object> { { "id", "f"}, {"class", "ds" } })