使用asp.net webapi在angular 2中对put方法的Http故障响应

使用asp.net webapi在angular 2中对put方法的Http故障响应,angular,asp.net-web-api,Angular,Asp.net Web Api,当我试图在angular 2应用程序的userdetails页面上更新我的userdetails时,我正面临put方法的Http失败响应。 有谁能给我提供解决以下错误的方法吗 错误:- 消息:请求的资源不支持http方法“PUT”。 消息:不允许对:405方法进行Http故障响应 userdetails.component.ts onUpdateUserClickindex { this.objuserservice.UpdateUserthis.UpdateUser.subscribe

当我试图在angular 2应用程序的userdetails页面上更新我的userdetails时,我正面临put方法的Http失败响应。 有谁能给我提供解决以下错误的方法吗

错误:- 消息:请求的资源不支持http方法“PUT”。 消息:不允许对:405方法进行Http故障响应

userdetails.component.ts

onUpdateUserClickindex { this.objuserservice.UpdateUserthis.UpdateUser.subscribe 响应=>{ this.UpdateUser=响应; this.userslist[this.updateIndex].email=this.UpdateUser.email; this.userslist[this.updateIndex].personname=this.UpdateUser.personname; this.userslist[this.updateIndex].mobile=this.UpdateUser.mobile; this.userslist[this.updateIndex].dateofbirth=this.UpdateUser.dateofbirth; this.userslist[this.updateIndex].monthofbirth=this.UpdateUser.monthofbirth;this.userslist[this.updateIndex].yearofbirth=this.UpdateUser.yearofbirth; this.userslist[this.updateIndex].gender=this.UpdateUser.gender; this.userslist[this.updateIndex].country=this.UpdateUser.country; }, 错误=>{ }; } users.service.ts

UpdateUserObj:用户:可观察 { 返回这个.http.put`/TestWebAPI/api/UserDetails`,userobj,responseType:json}; } 这是我的asp.NetWebapitesWebAPI项目代码

public void Putint id,[FromBody]用户对象 { dbentity.Entryobjuser.State=System.Data.Entity.EntityState.Modified; dbentity.SaveChanges; }
如果您在Web API中有默认路由,则应在URL中从Angular传递该id,如:

UpdateUserObj:用户:可观察 { this.http.put/TestWebAPI/api/UserDetails/+userObj.Id,userObj, responseType:json}; }
也许你没有通过那个身份证是个问题?您可以尝试将您的方法修改为public void Put[FromBody]user objuser,并在该方法中放置一个断点以进行测试,以查看该请求是否得到正确处理。再想一想,如果您在Web API中有默认路由,也许您应该在URL中传递该id,从,像这样。http.put/TestWebAPI/api/UserDetails/+userObj.Id,userObj,responseType:json};。谢谢,丹works@rajula-太好了,我已经从那条评论中做出了回答,所以它会更明显,如果你愿意,你可以接受。是的,我很高兴地接受它