错误无法将Object转换为表

时间:2017-07-08 07:12:34

标签: c# rest api

//POST api/values
[HttpPost]
[Route("api/post")]
public HttpResponseMessage Post([FromBody]classUser usuario)
{
    try
    {
        bool resultado = false;

        if (usuario == null) throw new ArgumentNullException("user can`t be null");

        classUser usr = new classUser();
        usr.ID = usuario.ID;
        usr.name = usuario.name;
        usr.email = usuario.email;
        usr.bio = usuario.bio;

        dc.tb_User.InsertOnSubmit(usr);
        dc.SubmitChanges();
        return Request.CreateResponse(HttpStatusCode.OK, resultado);
    }
    catch (Exception ex)
    {
        return Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message);
    }
}

我正在开发api休息,但是我收到了该行中的错误消息

dc.tb_User.InsertOnSubmit (usr);

无法将对象转换为SQL数据库中的表,显示此编译错误:

  

错误CS1503参数1:无法从'api4food.Models.classUser'转换为'api4food.tb_User'api4food

1 个答案:

答案 0 :(得分:1)

您的方法InsertOnSubmit需要tb_User类型的实例,而不是。{  输入classUser

所以你的映射应该是这样的:

// other code omitted
// assuming tb_User has the same shape as classUser
var usr = new tb_User 
{
    ID = usuario.ID,
    name = usuario.name,
    email = usuario.email,
    bio = usuario.bio
};

dc.tb_User.InsertOnSubmit(usr);

或者相应地调整tb_User上存在的属性名。