internal static System.Collections.Generic.Dictionary<string, string> ToDictionary(DatasetOverlayAnalystParameters datasetOverlayParams)
{
System.Collections.Generic.Dictionary<string, string> dict = new System.Collections.Generic.Dictionary<string, string>();
if (!string.IsNullOrEmpty(datasetOverlayParams.OperateDataset) && !string.IsNullOrWhiteSpace(datasetOverlayParams.OperateDataset))
{
dict.Add("operateDataset", "\"" + datasetOverlayParams.OperateDataset + "\"");
}
else
{
dict.Add("operateDataset", "\"\"");
}
dict.Add("operation", "\"" + datasetOverlayParams.Operation.ToString() + "\"");
string dataReturnOption = "{\"dataReturnMode\": \"RECORDSET_ONLY\",\"deleteExistResultDataset\": true,";
dataReturnOption += string.Format(System.Globalization.CultureInfo.InvariantCulture, "\"expectCount\":{0}", datasetOverlayParams.MaxReturnRecordCount);
dataReturnOption += "}";
dict.Add("dataReturnOption", dataReturnOption);
if (datasetOverlayParams.SourceDatasetFilter != null)
{
dict.Add("sourceDatasetFilter", FilterParameter.ToJson(datasetOverlayParams.SourceDatasetFilter));
}
else
{
dict.Add("sourceDatasetFilter", FilterParameter.ToJson(new FilterParameter()));
}
if (datasetOverlayParams.OperateDatasetFilter != null)
{
dict.Add("operateDatasetFilter", FilterParameter.ToJson(datasetOverlayParams.OperateDatasetFilter));
}
else
{
dict.Add("operateDatasetFilter", FilterParameter.ToJson(new FilterParameter()));
}
if (datasetOverlayParams.OperateDatasetFields != null)
{
string operateFields = "[";
System.Collections.Generic.List<string> list = new System.Collections.Generic.List<string>();
foreach (var item in datasetOverlayParams.OperateDatasetFields)
{
list.Add("\"" + item + "\"");
}
operateFields += string.Join(",", list.ToArray());
operateFields += "]";
dict.Add("operateDatasetFields", operateFields);
}
else
{
dict.Add("operateDatasetFields", "[]");
}
if (datasetOverlayParams.SourceDatasetFields != null)
{
string sourceFields = "[";
System.Collections.Generic.List<string> list = new System.Collections.Generic.List<string>();
foreach (var item in datasetOverlayParams.SourceDatasetFields)
{
list.Add("\"" + item + "\"");
}
sourceFields += string.Join(",", list.ToArray());
sourceFields += "]";
dict.Add("sourceDatasetFields", sourceFields);
}
else
{
dict.Add("sourceDatasetFields", "[]");
}
if (datasetOverlayParams.OperateRegions != null)
{
string Regions = "[";
System.Collections.Generic.List<string> list = new System.Collections.Generic.List<string>();
foreach (var item in datasetOverlayParams.OperateRegions)
{
list.Add(ServerGeometry.ToJson(item.ToServerGeometry()));
}
Regions += string.Join(",", list.ToArray());
Regions += "]";
dict.Add("operateRegions", Regions);
}
else
{
dict.Add("operateRegions", "[]");
}
dict.Add("tolerance", datasetOverlayParams.Tolerance.ToString(System.Globalization.CultureInfo.InvariantCulture));
return dict;
}