运算符'+'不能应用于'string'类型的操作数和mvc中的方法组

时间:2016-11-24 16:33:04

标签: c# asp.net-mvc html5

出现此错误

运算符'+'不能应用于'string'和'method group'

类型的操作数

我的代码中的这句话:

<input type="checkbox" name="selectedItems" id=@string.Format("radio"+     (item.Id).ToString()) class="css-checkbox9 all_check" value="@item.Id" />
<label for=@string.Format("radio"+ (item.Id).ToString()) class="css-label9" checked="checked">&nbsp; </label>

任何人都可以帮助我????

4 个答案:

答案 0 :(得分:0)

对代码进行一些更改,“+”操作足以进行连接,因此我删除了string.format()。另外,我还添加了缺少的""来包装httpAttributes

<input type="checkbox" name="selectedItems" id="@("radio"+  item.Id)" class="css-checkbox9 all_check" value="@item.Id" />
<label for="@("radio"+ item.Id)" class="css-label9" checked="checked">&nbsp; </label>

答案 1 :(得分:0)

您可以执行CodeReaper所说的内容,或者,如果您想维护string.Format,请尝试以下操作:

<label for="@string.Format("radio{0}", item.Id)" class="css-label9" checked="checked">&nbsp; </label>
<input type="checkbox" name="selectedItems" id="@string.Format("radio{0}", item.Id)" class="css-checkbox9 all_check" value="@item.Id">

答案 2 :(得分:0)

您可以尝试使用string.Concat

喜欢这个

<input type="checkbox" name="selectedItems" id=@string.Concat("radio", (item.Id).ToString()) class="css-checkbox9 all_check" value="@item.Id" />
<label for=@string.Concat("radio", (item.Id).ToString()) class="css-label9" checked="checked">&nbsp; </label>

答案 3 :(得分:0)

您可能已将您的Id“属性”定义为方法:

public string Id() {
    return myId;
}

您必须将Id设为属性...

public string Id {
    get { return myId; }
}

...或在连接中使用括号:

id= "radio" + item.Id()