Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从c中的匿名select语句返回多个值#_C#_Linq_Asp.net Core - Fatal编程技术网

C# 如何从c中的匿名select语句返回多个值#

C# 如何从c中的匿名select语句返回多个值#,c#,linq,asp.net-core,C#,Linq,Asp.net Core,我想在c#中返回该用户以及该用户的所有匹配项目。 我的代码如下所示: [HttpGet("{userId}/{projectId}")] public IActionResult GetProjectByUserId(int userId, int projectId) { var project = from up in _context.UserProjects where up.ProjectId == projectId &

我想在c#中返回该用户以及该用户的所有匹配项目。 我的代码如下所示:

    [HttpGet("{userId}/{projectId}")]
    public IActionResult GetProjectByUserId(int userId, int projectId)
    {
        var project = from up in _context.UserProjects
            where up.ProjectId == projectId && up.UserId == userId
            select new
            {
                UserName = up.User.Username,
                ProjectName = up.Project.Name
            };

        return Ok(project);
    } 
结果我在项目中获得了一个用户:

  [
    {
        "userName": "tom",
        "projectName": "Portal"
    }
  ]
在我的例子中,“Tom”有3个项目,我希望返回“Tom”的每个项目,例如:

  [
    {
        "userName": "tom",
        "projectName": "Portal"
    },
    {
        "userName": "tom",
        "projectName": "Elanor"
    },
    {
        "userName": "tom",
        "projectName": "Kestrel"
    },
  ]

您的选择是好的,但是查询中有up.ProjectId==ProjectId,这将它限制为仅限于您为其提供id的项目

[HttpGet("{userId}/{projectId}")]
public IActionResult GetProjectByUserId(int userId, int projectId)
{
    var project = from up in _context.UserProjects
        where up.UserId == userId
        select new
        {
            UserName = up.User.Username,
            ProjectName = up.Project.Name
        };

    return Ok(project);
} 

删除
up.ProjectId==ProjectId
条件

[HttpGet("{userId}/{projectId}")]
public IActionResult GetProjectByUserId(int userId, int projectId)
{
    var project = from up in _context.UserProjects
        where up.UserId == userId
        select new
        {
            UserName = up.User.Username,
            ProjectName = up.Project.Name
        };

    return Ok(project);
} 

您的查询请求具有特定ProjectID的项目。删除
up.ProjectId==ProjectId