通过电子邮件搜索不是id

时间:2015-06-20 07:24:17

标签: javascript angularjs rest asp.net-web-api angularjs-routing

我们知道Asp.net Web API 2具有用于按id搜索的api / get / 5方法。我需要通过电子邮件进行搜索,我发现这个here我需要一个简单的例子。我也研究了Angularjs路由,我发现这个话题需要时间,我今天要完成这个。

api / users / 5的控制器的一部分。

// GET: api/users/5         get user by id
    public Users Get(int id)
    {
        Users user = db.Users.Find(id);
        if (user == null)
        {
            throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
        }
        return user;
    }

我的JS代码

 $http.get('/api/users'+ $scope.Email)
         .success(function (response) {
             $scope.users = response;
         });
谢谢

2 个答案:

答案 0 :(得分:1)

尝试传递电子邮件作为参数。

public Users Get(string Email)
    {
        Users user = db.Users.Find(Email);
        if (user == null)
        {
            throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
        }
        return user;
    }

答案 1 :(得分:0)

我猜你在$ http call

中忘记了'/'
$http.get('/api/users/'+ $scope.Email)
         .success(function (response) {
             $scope.users = response;
         });

和Asp: -

public Users Get(string Email)
    {
        Users user = db.Users.Find(Email);
        if (user == null)
        {
            throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
        }
        return user;
    }

希望它有助于不确定:)