4

使用 MVC,我将一个Projects列表传递给视图。

@if (Model.Projects != null && Model.Projects.Count > 0)
{
<fieldset>
    <table class="items" summary="@T("This is a table of the delivery Runs in your application")">
        <colgroup>
}

else
{
//no data available
}

Model.Projects.Count > 0 是说:

运算符 > 不能应用于“方法组”和“int”类型的操作数

4

4 回答 4

5

怎么样

Model.Projects.Count() > 0

或者

Model.Projects.Any()

如果您使用的是 resharper,它会推荐您使用 Model.Projects.Any()

于 2013-09-30T10:22:31.247 回答
4

您将Count其视为财产。

这是一种方法。你需要打电话Count()。例如

@if (Model.Projects != null && Model.Projects.Count() > 0)
{
<fieldset>
    <table class="items" summary="@T("This is a table of the delivery Runs in your    application")">
        <colgroup>
}
于 2013-09-30T10:24:12.913 回答
3

计数是一种方法。您的代码必须是

Model.Projects.Count()
于 2013-09-30T10:23:12.953 回答
1

您在 Count 之后缺少括号。Count()是一个方法而不是一个属性,所以你的代码应该是:

@if (Model.Projects != null && Model.Projects.Count() > 0)
{
    <fieldset>
        <table class="items" summary="@T("This is a table of the delivery Runs in your application")">
        <colgroup>
}

但看到你只关心是否有任何元素Model.Projects,而不是有多少,而不是

Model.Projects.Count() > 0

你可以使用

Model.Projects.Any()
于 2013-10-03T13:15:25.620 回答