c# - 非静态方法需要 webapi 中的目标

标签 c# asp.net-web-api

我想在 Controller 中发送 HTTP POST 请求。

这是我的代码:

[HttpPost]
public IHttpActionResult login([FromBody] ClubAPI.Models.AllRequest.login userid)
{
    using (DAL.ClubEntities db = new ClubEntities())
    {
        DAL.AspNetUser q = db.AspNetUsers.Single(t=>t.Id.Equals(userid.id.ToString()));

        if (q == null)
        {
            return Ok(new ClubAPI.Models.AllResponse.loginResponse
            {
                msg = "bad",
                state = false,
            });
        }
        return Ok(new ClubAPI.Models.AllResponse.loginResponse
        {
            msg = "good",
            state = true,
            token = q.UserName,
        });
    }
}

但现在我得到以下错误:

"Non-static method requires a target in webapi" i cant solve that. the error is related to this line: db.AspNetUsers.Single(t=>t.Id.Equals(userid.id.ToString()));

当我将 ID 更改为真实 ID,如“t.Id.Equals(2342)”时,错误得到解决;但我不想使用真实 ID。

最佳答案

Try this code instead of
DAL.AspNetUser q = db.AspNetUsers.SingleOrDefault(t=>t.Id == userid.id.ToString());
into
DAL.AspNetUser q = db.AspNetUsers.SingleOrDefault(t=>t.Id == userid.id);

关于c# - 非静态方法需要 webapi 中的目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40151984/

相关文章:

c# - 如何在 C# 互操作调用中从 C# 实例化数组中的 C 取回数据?

c# - 使用 ASP.NET Framework 的简单 POST

c# - 当鼠标悬停在另一个椭圆上时,如何更改椭圆的填充颜色?

C# MVC 3/jQuery 预览按钮 CMS

c# - 如何在 Windows Phone 8 上进行代码内绑定(bind)

c# - 如果我使用 getFileAsync 而不是 Picker.pickSingleFileAsync,则无法从 FutureAccessList 检索文件

asp.net - API 版本控制和在版本更新上重用现有实现

使用记录类型的 F# WebApi 未提供所需的 XML 输出

c# - Asp.Net Identity : Web Api request fails authorization, 返回 200 OK

c# - 自定义 MultipartFormDataStreamProvider 上传后通过 WebApi 从 SQL 下载大文件