Q:

ASP.NET 4.5 WebAPI to return list of users

I'm new to ASP.NET. Just finished 3 books in ASP.NET MVC,Web API and SPA. But it seem not enough to solve a very simple problem. I Have the following code in my web api controller to return a JSON/XML data. The data required is to return a list of users registered with the Identity Framework. Have done this on MVC but not able to figure out the web api.
[AllowAnonymous]
    [Route("UserInfos")]
    public IEnumerable<AppUser> GetUserInfos()
    {
        List<AppUser> logins = new List<AppUser>();
        foreach (AppUser user in UserManager.Users)
        {

            logins.Add(user);
        }

        return logins;

    }

But I'm getting errors when I call this web API. Error as below.
<Error>
<Message>An error has occurred.</Message>
<ExceptionMessage>
The 'ObjectContent`1' type failed to serialize the response body for content type 'application/xml; charset=utf-8'.
</ExceptionMessage>
<ExceptionType>System.InvalidOperationException</ExceptionType>
<StackTrace/>........
....
....

I'm doing a user manager/administrations in an SPA, soI need the web api to return list of users, roles etc. Just like how MVC returns these data in the model/controlled to build the administration page.
please help. any link to tutorials is appreciated, as I have exhausted everything seraching for the answer to this. thanks.
[Edit]
This code below solves it. I created a model just for this purpose. but why can't I directly access and work with the Identity model? I can do it in MVC.
[AllowAnonymous]
    [Route("UserInfos")]
    public IEnumerable<FlatUserModel> GetUserInfos()
    {
        List<FlatUserModel> logins = new List<FlatUserModel>();
        foreach (AppUser user in UserManager.Users)
        {
            logins.Add(new FlatUserModel
            {
                Id=user.Id,
                Name=user.UserName,
                Email=user.Email

            });
        }

        return logins;
    }

A:

[AllowAnonymous]
[Route("UserInfos")]
public IEnumerable<FlatUserModel> GetUserInfos()
{
    List<FlatUserModel> logins = new List<FlatUserModel>();
    foreach (AppUser user in UserManager.Users)
    {
        logins.Add(new FlatUserModel
        {
            Id=user.Id,
            Name=user.UserName,
            Email=user.Email

        });
    }

    return logins;
}

