我使用GridMvc并且我想添加列,其中单元格中的内容将独立于一个属性显示。
当IsBase
为真时,应该在另一边url.action
columns.Add().SetWidth(30).RenderValueAs(d => d.IsBase ? "" : (string)(x => @<a href='@Url.Action("Delete", "Categories", new { @id = x.Id })'><i class="fa fa-trash"></i></a>));
错误: 无法将lambda表达式转换为'string'类型,因为它不是委托类型
答案 0 :(得分:0)
你的lambda表达式返回一个lambda表达式强制转换为字符串,而不是只返回一个字符串:
.RenderValueAs(
d => d.IsBase ? "" : /* first lambda */
(string)( /* string cast */
x => @<a href='@Url.Action("Delete", "Categories", new { @id = x.Id })'><i class="fa fa-trash"></i></a>
)
);
我怀疑你想要以下内容:
.RenderValueAs(
d => d.IsBase ? "" : @<a href='@Url.Action("Delete", "Categories", new { @id = d.Id })'><i class="fa fa-trash"></i></a>
);