0

所以我试图调用这个特定的方法:

[HttpGet]
public int GetLogin(string u, string p)
{
    UserLogin uL = new UserLogin();
    return (int)uL.Authenticate(u, p);
}

但是它一直在我的控制器中调用此方法:

public IEnumerable<string> Get()
{
    return new string[] { "value1", "value2" };
}

^^ 这是Controller中生成的代码。

这里是我工厂的 Angular 代码,更重要的是,我的 URI:

var loginFactory = angular.module('loginService', ['ngResource'])

loginFactory.factory('UserLogin', function ($resource) {
    return $resource('api/login?:username?:password', {}, {
        query: {
            method: 'GET',
            params: { username: 'hunter', password: 'hunter' },
            isArray:true
        }
    });
});

任何见解将不胜感激。谢谢。

4

2 回答 2

1

将您的资源更改为:

$resource('api/GetLogin?u=:username&p=:password', {}, {  // if that's the right route
    query: {
        method: 'GET',
        params: { username: 'hunter', password: 'hunter' },
        isArray:true
    }
});
于 2013-05-18T01:20:48.290 回答
0

你的要求是api/login?username=something&password=something……吗?如果是,则操作上的参数名称应与查询字符串参数名称匹配:

public int GetLogin(string **username**, string **password**)

于 2013-05-17T23:14:53.167 回答