使用参数+ razor MVC4在html输入文本中调用方法

时间:2013-06-13 05:07:11

标签: asp.net-mvc-4 razor-2

我在剃刀视图(list.cshtml)中将属性值分配给html输入测试框,如下所示

string  cap = item.GetValForProp<string>("Caption");

input type="text" name="Caption" class="txt" value="@cap"

这很好用。

但是,如果我想写下面的内容:

input type="text" name="Caption" class="txt" value="@item.GetValForProp<string>("Caption")"

编译错误无法识别“Caption”参数。如果我给出单引号,则不会将其视为参数,而是给出无效参数的异常。

我该如何纠正?

代码块:

@foreach (var item in Model) {

     cap = item.GetValForProp<string>("Caption");
     nameinuse = item.GetValForProp<string>("NameInUse");
     desc = item.GetValForProp<string>("Description");

    <tr>
        <td class="txt">
            <input type="text" name="Caption" class="txt" value="@cap"/>
            <input type="text" name="Caption" class="txt" value="@nameinuse"/>
            <input type="text" name="Caption" class="txt" value="@desc"/>
        </td>

    </tr>
}

2 个答案:

答案 0 :(得分:1)

我已经通过使用TextBox解决了这个问题,如下所示

@Html.TextBox("Caption", item.GetValForProp<string>("Caption"), new { @class = "txt" })

答案 1 :(得分:0)

用括号括起来 - 注意@( )

cts.Token