private string CreateProjectJson(List<IPolygon> polygons) { // get the geojson of the aois var aoi = Jarvis.ConvertPolygonsToGeoJson(polygons); var newProject = new Project(); newProject.aois.Add(aoi); newProject.originalGeometries.Add(aoi); newProject.namedBuffers.Add(new NamedBuffer { name = "original AOI", buffer = aoi }); newProject.name = this.projectNameTextbox.Text; if (this.availableRecipesCombobox.SelectedIndex != -1) { var recName = this.availableRecipesCombobox.Items[this.availableRecipesCombobox.SelectedIndex].ToString(); var recipe = this.GetRecipe(recName); if (recipe != null) { var recipeConfig = new RecipeConfig { recipeId = recipe.id, recipeName = recipe.name }; newProject.recipeConfigs.Add(recipeConfig); } } var projectJson = JsonConvert.SerializeObject(newProject).Replace("\\", ""); projectJson = projectJson.Replace("\"aois\":[\"{\"", "\"aois\":[{\""); projectJson = projectJson.Replace("\"],\"recipeConfigs\"", "],\"recipeConfigs\""); projectJson = projectJson.Replace("\"originalGeometries\":[\"", "\"originalGeometries\":["); projectJson = projectJson.Replace("\"],\"namedBuffers\"", "],\"namedBuffers\""); projectJson = projectJson.Replace("\"buffer\":\"{", "\"buffer\":{"); projectJson = projectJson.Replace("]]}\"}]}", "]]}}]}"); return projectJson; }