c# IeNumerable 如果没有则返回[重复]

Posted

技术标签:

【中文标题】c# IeNumerable 如果没有则返回[重复]【英文标题】:c# IeNumerable Return if nothing [duplicate] 【发布时间】:2021-04-09 14:33:56 【问题描述】:

我有这种方法,我首先检查用户是否为管理员,如果您是管理员,您将从数据库中获取用户列表。但是 VS 告诉我我必须在 IF 管理括号之外再放一个回报,我在这里完全失去了我应该回报什么?由于您不是管理员,因此您无法返回任何内容

public static IEnumerable<User> FindUser(int AdminId, string Keyword)

 using (var db = new DatabaseContext())
 
  var admin = db.Users.Where(a => a.Id == AdminId).Select(a => a.IsAdmin).FirstOrDefault();
  if (admin == true)
  
   var FindUser = db.Users.Where(u => u.Name.Contains(Keyword)).OrderBy(u => u.Name).ToList();
   return FindUser;
  
   return something here(???)
  
 

【问题讨论】:

return Enumerable.Empty(); 【参考方案1】:

你要找的是

return Enumerable.Empty&lt;User&gt;();

【讨论】:

以上是关于c# IeNumerable 如果没有则返回[重复]的主要内容,如果未能解决你的问题,请参考以下文章

LINQ如何返回IEnumerable 如果接口无法实例化? [重复]

深入浅出-探究C#中的IEnumerableIEnumeratorYield

C#中YieldReturn的用法

在 C# 中将 List<IEnumerable<int>> 转换为 List<int> [重复]

c#接口公共私有[重复]

C# 使用IEnumerable,yield 返回结果,同时使用foreach时,在循环内修改变量的值无效