【发布时间】:2018-02-20 16:35:25
【问题描述】:
我有一个如下代码的事件处理程序:
viewer.LocalReport.SubreportProcessing += new Microsoft.Reporting.WebForms.SubreportProcessingEventHandler(LocalReport_SubreportProcessing);
并且这个方法作为上面事件处理程序的参数:
private static void LocalReport_SubreportProcessing(object sender, SubreportProcessingEventArgs e) {
DateTime movementDate = Convert.ToDateTime(e.Parameters[0].Values[0]);
TourTransactionsController controller = new TourTransactionsController();
var movement = controller.Movements();
List<Movement> movementList = new List<Movement>();
movementList.Add(new Movement {
Destination = "TEST",
MovementDescription = "TEST",
DateTime = Convert.ToDateTime("2017-09-25")
});
e.DataSources.Clear();
e.DataSources.Add(new Microsoft.Reporting.WebForms.ReportDataSource() {
Name = "DSMovements",
Value = movementList
});
//throw new NotImplementedException();
}
这两种方法都写在 WEB API 控制器中。事件处理程序在调试时命中,但在我在调试 LocalReport_SubreportProcessing 方法时按 F11(步入)后没有命中。为什么LocalReport_SubreportProcessing 方法没有命中?
非常感谢任何帮助或回答。
【问题讨论】:
-
您只有
+=/add事件处理程序。你确定事件是从LocalReport触发的吗? -
我认为因为代码是在我点击 Web API 时执行的,所以事件是从 Web API 触发的。访问 web api 时是否可以触发事件处理程序?
-
抱歉,很难理解您想要什么。
The eventhandler is hitting while debugging, but after I press F11 (step into)- 您是否希望在您+=/add时调用事件处理程序? -
是的。我希望在我 += 时调用事件处理程序。老实说,我不确定我是否了解事件处理程序的工作原理。我的理解是当我 += / 添加它时调用事件处理程序正确吗?
标签: c# asp.net api asp.net-web-api web