The problem is that json.net doesn't know how to add data to your Battles class. There is couple way to fix that:
Deserialize your data to a list:
JsonConvert.DeserializeObject<List<RootObject>>(jsr.ReadToEnd());
Instead of implementing IEnumerable
, implement ICollection<RootObject>
in your Battles class, then JsonConvert will properly populate it with data:
public class Battles: ICollection<RootObject>