Great, thanks a lot dbroux. What i did is spin through the layers until I found the first occurance of this type and also where the Maps SpatialReference is equal to the Layers SpatialReference.
if (MapUnit != DistanceUnit.Undefined)
measureAction.MapUnits = MapUnit;
else
{
//Try and get proper map units if not specified by user
String sUnits = "";
for (Int32 i = 0; i < Map.Layers.Count; i++)
{
if (Map.SpatialReference.WKID == Map.Layers.SpatialReference.WKID)
{
if (Map.Layers is ArcGISDynamicMapServiceLayer)
{
sUnits = ((ArcGISDynamicMapServiceLayer)Map.Layers).Units;
break;
}
else if (Map.Layers is ArcGISTiledMapServiceLayer)
{
sUnits = ((ArcGISTiledMapServiceLayer)Map.Layers).Units;
break;
}
}
}
esriUnits units = (esriUnits)Enum.Parse(typeof(esriUnits), sUnits, true);
DistanceUnit distanceUnit = Utility.Utility.esriUnitsToDistanceUnit(units);
if (distanceUnit != DistanceUnit.Undefined)
measureAction.MapUnits = distanceUnit;
//Default to DecimalDegrees if nothing else
else
measureAction.MapUnits = DistanceUnit.DecimalDegrees;
Thank you!!!