I have a Web API controller that returns data to my client. The code looks like this:

```
    [HttpGet]
    [ActionName("Retrieve")]
    public IEnumerable<Reference> Retrieve(int subjectId)
    {
        return _referenceService.Retrieve(subjectId);
    }

```

Can someone tell me is it necessary to specify the ActionName? 

Also should I return an IEnumerable, an IList or something else?