【问题标题】:ASP.NET - CreatedAtRoute with two parametersASP.NET - 具有两个参数的 CreatedAtRoute
【发布时间】:2022-12-18 23:12:41
【问题描述】:

如何在CreatedAtRoute函数中使用我的GetUser函数?

    [HttpGet]
    public ActionResult GetUser(string login, string password)
    {
        return Ok(_map.Map<UserReadDTO>(_dataStore.GetUser(login, password)));
    }

    [HttpPost]
    public ActionResult AddUser(UserWriteDTO userDTO)
    {
        User user = _map.Map<User>(userDTO);
        _dataStore.AddUser(user);
        _dataStore.SaveChanges();
        return CreatedAtRoute(nameof(GetUser), new { }, new { Login = user.Login, Password = user.Password });
    }

我尝试了很多参数,但每次我都收到路线不正确的错误。

【问题讨论】:

    标签: c# asp.net api entity-framework http


    【解决方案1】:

    试试这个,你可以修改CreatedAtRoute函数来调用GetUser动作。

    return CreatedAtRoute(nameof(GetUser), new {
      login = user.Login, password = user.Password
    }, new {
      Login = user.Login, Password = user.Password
    });
    

    这将创建一个新用户并使用 GetUser 操作返回新创建的用户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-02
      • 2020-05-10
      • 1970-01-01
      • 2015-09-30
      • 2014-02-02
      • 2015-01-06
      • 1970-01-01
      相关资源
      最近更新 更多