【发布时间】:2015-11-12 23:09:22
【问题描述】:
您好,我正在制作一个简单的程序,您可以搜索用户,注册用户,并获取所有已注册的用户。
我希望能够使用
搜索我的用户/api/user/search?name=...&email=B
但这不起作用。我收到一个错误:
{ "Message": "没有找到与请求 URI 'http://localhost:63881/api/user/search' 匹配的 HTTP 资源。", "MessageDetail": "在控制器 'User' 上找不到与请求匹配的操作。" }
我的代码看起来像这样
[RoutePrefix("api/user")]
public class UserController : ApiController
{
public HttpResponseMessage Get() {
// Check if the user is in the database
return Request.CreateResponse(HttpStatusCode.OK, "Return All");
}
public HttpResponseMessage Post(UserForm form) {
if (ModelState.IsValid == false) {
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
if (form == null) {
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Please enter data");
}
// Register the person
return Request.CreateResponse(HttpStatusCode.OK, "Register");
}
[Route("search/{name}/{email}")]
[HttpGet]
public HttpResponseMessage SearchGet(string name, string email) {
return Request.CreateResponse(HttpStatusCode.OK, "Found");
}
谢谢!
【问题讨论】:
-
点击 /api/user/search/bob/jim 是否有效
-
是的,但我希望它也可以通过 /api/user/search?name=...&email= B
标签: asp.net-web-api2