Simplest example of this, I get a collection and try to output it via Web API:
// GET api/items public IEnumerable Get() { return MyContext.I
In my case the object being returned had a property within it with a type that did not have an argumentless/default constructor. By adding a zero-argument constructor to that type the object could be serialized successfully.