A dynatree tree can be initialised in many different ways. Some of these require that you supply a tree of javascript objects (see section 4.2 of the online documentation). In your example the title, key, icon and addClass properties are standard properties that the dynatree plugin uses to render the node. The ParentID and IsExpandable properties are custom properties that one of your developers added to the object to add custom behaviour.
The AsEnumerable is a DataTable extension method that lets you use LINQ queries against the rows in a DataTable. Field is a DataRow method that lets you access the fields in a row.
So what's happening in the second snippet is that all a dynatree node object is created for each row in the data table.