public List <GeographyPlace> GetNearestPlacesUsingGeography(double latitude, double longitude, double radius = 10, int limit = 10) { var point = DbGeography.FromText("POINT(" + longitude + " " + latitude + ")", 4326); var topLeftLatitude = 23.783726; var topLeftLongitude = 90.344245; var bottomRightLatitude = 23.685148; var bottomRightLongitude = 90.492713; MapsContext context = new MapsContext(); var datas = context.GeographyPlaces.Where(x => x.Location.Distance(point) <= radius * 1000) .Take(limit) .OrderBy(x => x.Location.Distance(point)); System.Data.Spatial.DbGeography polygon; try { polygon = System.Data.Spatial.DbGeography.PolygonFromText( "POLYGON((127.652 -26.244,127.652 -26.194,90.344245 23.783726,127.652 -26.244))", 4326); } catch (System.Exception ex) { throw; } //polygon. var result = datas.ToList(); return(result); }
public void Public_members_check_for_null_arguments() { TestNullArgument("wellKnownBinary", () => DbGeography.FromBinary(null)); TestNullArgument("wellKnownBinary", () => DbGeography.FromBinary(null, 1)); TestNullArgument("lineWellKnownBinary", () => DbGeography.LineFromBinary(null, 1)); TestNullArgument("pointWellKnownBinary", () => DbGeography.PointFromBinary(null, 1)); TestNullArgument("polygonWellKnownBinary", () => DbGeography.PolygonFromBinary(null, 1)); TestNullArgument("multiLineWellKnownBinary", () => DbGeography.MultiLineFromBinary(null, 1)); TestNullArgument("multiPointWellKnownBinary", () => DbGeography.MultiPointFromBinary(null, 1)); TestNullArgument("multiPolygonWellKnownBinary", () => DbGeography.MultiPolygonFromBinary(null, 1)); TestNullArgument("geographyCollectionWellKnownBinary", () => DbGeography.GeographyCollectionFromBinary(null, 1)); TestNullArgument("geographyMarkup", () => DbGeography.FromGml(null)); TestNullArgument("geographyMarkup", () => DbGeography.FromGml(null, 1)); TestNullArgument("wellKnownText", () => DbGeography.FromText(null)); TestNullArgument("wellKnownText", () => DbGeography.FromText(null, 1)); TestNullArgument("lineWellKnownText", () => DbGeography.LineFromText(null, 1)); TestNullArgument("pointWellKnownText", () => DbGeography.PointFromText(null, 1)); TestNullArgument("polygonWellKnownText", () => DbGeography.PolygonFromText(null, 1)); TestNullArgument("multiLineWellKnownText", () => DbGeography.MultiLineFromText(null, 1)); TestNullArgument("multiPointWellKnownText", () => DbGeography.MultiPointFromText(null, 1)); TestNullArgument("multiPolygonWellKnownText", () => DbGeography.MultiPolygonFromText(null, 1)); TestNullArgument("geographyCollectionWellKnownText", () => DbGeography.GeographyCollectionFromText(null, 1)); TestNullArgument("other", s => s.SpatialEquals(null)); TestNullArgument("other", s => s.Disjoint(null)); TestNullArgument("other", s => s.Intersects(null)); TestNullArgument("distance", s => s.Buffer(null)); TestNullArgument("other", s => s.Distance(null)); TestNullArgument("other", s => s.Intersection(null)); TestNullArgument("other", s => s.Union(null)); TestNullArgument("other", s => s.Difference(null)); TestNullArgument("other", s => s.SymmetricDifference(null)); }