I don't think there is a SL API giving the fields for ArcGISDynamicMapServiceLayer but you can get the info by requesting the REST point.For example http://server.arcgisonline.com/ArcGIS/rest/services/Demographics/USA_Population_Density/MapServer/3?... gives this result:{
"id" : 3,
"name" : "Counties",
"type" : "Feature Layer",
"geometryType" : "esriGeometryPolygon",
"description" : "This thematic map presents the population density in the United States in 2009. Population density is the number of people per square mile. It is calculated by dividing the total population count of geographic feature by the area of the feature, in square miles. The area is calculated from the geometry of the geographic feature in projected coordinates. The geography depicts states at greater than 25m scale, counties at 1m to 25m scale, Census Tracts at 250k to 1m scale, and Census Block Groups at less than 250k scale. The map has been designed to be displayed with semi-transparency of about 50% for overlay on other base maps, which is reflected in the legend for the map. For more information on this map, visit us online at http://goto.arcgisonline.com/maps/Demographics/USA_Population_Density",
"definitionExpression" : "",
"copyrightText" : "Copyright:© 2009 ESRI",
"minScale" : 25000000,
"maxScale" : 750001,
"extent" : {
"xmin" : -19840230.3902342,
"ymin" : 2144435.3403614,
"xmax" : -7452840.46520711,
"ymax" : 11537127.3143578,
"spatialReference" : {
"wkid" : 102100
}
},
"displayField" : "NAME",
"fields" : [
{"name" : "Shape", "type" : "esriFieldTypeGeometry", "alias" : "Shape"},
{"name" : "ID", "type" : "esriFieldTypeString", "alias" : "ID"},
{"name" : "NAME", "type" : "esriFieldTypeString", "alias" : "Name"},
{"name" : "ST_ABBREV", "type" : "esriFieldTypeString", "alias" : "State Abbreviation"},
{"name" : "TOTPOP_CY", "type" : "esriFieldTypeInteger", "alias" : "2009 Total Population"},
{"name" : "POPDENS_CY", "type" : "esriFieldTypeDouble", "alias" : "2009 Population Density"},
{"name" : "LANDAREA", "type" : "esriFieldTypeDouble", "alias" : "Land Area in Square Miles"},
{"name" : "Shape_Length", "type" : "esriFieldTypeDouble", "alias" : "Shape_Length"},
{"name" : "Shape_Area", "type" : "esriFieldTypeDouble", "alias" : "Shape_Area"}
],
"parentLayer" : {"id" : 0, "name" : "USA Population Density"},
"subLayers" : []
}
But you will need a little code to deserialize this./Dominique