无法将Int类型转换为List

Dol*_*aps 1 c# asp.net asp.net-mvc if-statement

我正在尝试在我的餐厅评论网站上创建一个功能,以确定餐厅是否已经过审核.如果餐厅未经审核,则返回变量.但是我一直收到错误Cannot implicitly convert type 'int' to 'System.Collections.Generic.List<>'就行了if (restaurantreview = 0).

任何帮助将不胜感激.

var restaurantreview = objCtx.Reviews.Where(r => r.RestaurantId == currentrestaurant).ToList();
if (restaurantreview = 0)
{
    var none = "Sorry Your Restaurant Hasnt been Reviewd Yet";
}
else
{
    var averagefood = objCtx.Reviews
                            .Where(r => r.RestaurantId == currentrestaurant)
                            .Average(r => r.Food);
}
Run Code Online (Sandbox Code Playgroud)

lc.*_*lc. 7

您正在将列表(返回者ToList())与整数进行比较0.实际上你没有比较 - 你有一个等于,所以你试图分配0一个List<T>变量.我想这是一个错字.

也许你打算检查一下是否有Any评论:

if (!restaurantreview.Any())
{
    //...
}
Run Code Online (Sandbox Code Playgroud)

另一种方法 - 并使用你的0 - 是检查Count列表中的项目:

if (restaurantreview.Count == 0)
{
    //...
}
Run Code Online (Sandbox Code Playgroud)


Mar*_*rco 6

列表有0到n个项目,所以您可能正在寻找的是:

if (restaurantreview.Count == 0)
{
    var none = "Sorry Your Restaurant Hasnt been Reviewd Yet";
}
Run Code Online (Sandbox Code Playgroud)

请注意,这=用于分配值,而不是用于检查相等性.使用==.