我们可以在ASP.Net MVC中使用ToString()或三元运算符和html帮助器

时间:2015-08-26 13:55:05

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

查看代码

<div class="editor-field">
    @Html.EditorFor(model => model.Id)
</div>

当我尝试这样做@Html.EditorFor(model => model.Id.ToString())时,我得到了错误。在视图中使用ToString()有什么问题?

在视图中我们可以检查null或ternary operator如果为null则返回其他内容。给我看几个代码示例。有人告诉我,我不可能在模型课上做所有事情。寻找指引。感谢

1 个答案:

答案 0 :(得分:0)

当您尝试在此处使用某个方法(ToString())时,您应该收到以下错误:

  

模板只能用于字段访问,属性访问,单维数组索引或单参数自定义索引器表达式。

如错误所述,此助手无法传递方法。

你到底想要做什么?好像你可能试图处理文本字段中的空白输入。这里的解决方法是将其保留为原始版本:

@Html.EditorFor(model => model.Id)

然后,如果您的Id属性类型为int,则必须测试0.这可能会给您一个错误的“空白”状态。你可以在这里做的是将Id属性设置为类型int?(可以为null):

public class MyModel
{
    public int? Id { get; set; }
}

然后在您的帖子上,检查Id是否为空:

if (myModel.Id == null)
    // handle accordingly