BoldSignEasily embed eSignatures in your .NET applications. Free sandbox with native SDK available.
<button onclick="download()" value="Export">Export</button>
<div id="ControlRegion">
@(Html.EJ().Chart("container").ExportSettings(ex => ex.Type(ChartExportingType.XLSX).Action("ExportChart")
.Mode(ChartExportingMode.Server))
</div>
<script>
function download(args) {
$("#container").ejChart("export");
}
</script> |
//Export chart method in server side
public void ExportChart(string Data, string ChartModel)
{
ChartProperties obj = ConvertChartObject(ChartModel);
string type = obj.ExportSettings.Type.ToString().ToLower();
string fileName = obj.ExportSettings.FileName;
string orientation = obj.ExportSettings.Orientation.ToString();
ExcelExport exp = new ExcelExport();
exp.Export(obj, "", fileName + ".xlsx", ExcelVersion.Excel2010, null, null);
}
private ChartProperties ConvertChartObject(string ChartModel)
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
IEnumerable div = (IEnumerable)serializer.Deserialize(ChartModel, typeof(IEnumerable));
ChartProperties chartProp = new ChartProperties();
foreach (KeyValuePair<string, object> ds in div)
{
var property = chartProp.GetType().GetProperty(ds.Key, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase);
if (property != null)
{
Type type = property.PropertyType;
string serialize = serializer.Serialize(ds.Value);
object value = serializer.Deserialize(serialize, type);
property.SetValue(chartProp, value, null);
}
}
return chartProp;
} |