Я «решил» это, создав экземпляр контроллера в выделенном фрагменте кода - в этом проекте с помощью файла Spring.net IOC objects.xml и Spring.net XmlObjectFactory.
Для кнопкиЯ добавил HtmlInputButton в код и установил обработчик события onclick.Это было сделано асинхронно с использованием метода Dundas OlapManager.GetCallbackEventReference () в сочетании с новым обработчиком команд, назначенным для диаграммы OLAP, который предоставляет вызовы для вызова методов контроллера.
В функции Page_Load ():
OlapClient1.OlapChart.Command += new CommandEventHandler(OlapChart_Command);
SaveDci.Attributes["onclick"] =
OlapClient1.OlapManager.GetCallbackEventReference(OlapClient1.OlapChart, "SaveDci", typeof(OlapChart));
SaveSnapshot.Attributes["onclick"] =
OlapClient1.OlapManager.GetCallbackEventReference(OlapClient1.OlapChart, "SaveSnapshot", typeof(OlapChart));
И обработчик команд OLAP:
private void OlapChart_Command(object sender, CommandEventArgs e)
{
if (e.CommandName.Equals("SaveDci"))
{
// Function to call appropriate controller method
SaveAsData(sender, e);
}
if (e.CommandName.Equals("SaveSnapshot"))
{
// Function to call appropriate controller method
SaveAsSnapshot(sender, e);
}
}
Обновление iFrame с ответом с использованием jQuery и метода OlapMananger.ExecuteClientScript ():
OlapClient1.OlapManager.ExecuteClientScript("$('#UpdatePanel').text('" + returnMessage + "');");