Controller: [MapActionFilter] public void GetCurrentExtentFeatures(Map map, GeoCollection args) { RectangleShape currentExtent = new RectangleShape(double.Parse(args[0].ToString()), double.Parse(args[1].ToString()), double.Parse(args[2].ToString()), double.Parse(args[3].ToString())); LayerOverlay overlay = map.CustomOverlays["MsSql2008"] as LayerOverlay; MsSql2008FeatureLayer sql2008Layer = overlay.Layers[0] as MsSql2008FeatureLayer; if (sql2008Layer != null) { Collection allfeaturesInBoundingBox = sql2008Layer.QueryTools.GetFeaturesInsideBoundingBox(currentExtent, ReturningColumnsType.NoColumns); //To Do like add those features into MarkerOverlay. } } View: function GetCurrentExtentFeatures() { var currentBounds = Map1.getExtent(); var currentExtent = []; currentExtent.push(currentBounds.left); currentExtent.push(currentBounds.top); currentExtent.push(currentBounds.right); currentExtent.push(currentBounds.bottom); Map1.ajaxCallAction('@ViewContext.RouteData.Values["Controller"].ToString()', 'GetCurrentExtentFeatures', currentExtent, function (result) { //ToDo like refresh layer Map1.redrawLayer("MarkerOverlay"); }) }