我正在从控制器调用具有实体框架的存储过程,然后接收返回的结果集。然后,我试图使用结果集来填充我的ViewModel,并通过控制器动作将其传递给视图。问题是我必须从if
语句内部调用存储过程,因此由于作用域,我无法访问它以通过控制器动作传递它。
下面是一个示例(在控制器动作中):
if (dropdown1 == "Name")
{
var Results = entities.Report(SomeInputParameter).ToList();
var viewModel = new ReportingViewModel { Reports = Results };
}
Report
是我的存储过程,Reports
是我试图填充的ViewModel对象。
由于它在If语句中,所以我不能像这样访问它并将其传递给视图:
return View("ReportGenerator", viewModel);
如果您能提供帮助,我将不胜感激。
谢谢!
就不能在if
之外声明吗?
ReportingViewModel viewModel = null;
if (dropdown1 == "Name")
{
var Results = entities.Report(SomeInputParameter).ToList();
viewModel = new ReportingViewModel { Reports = Results };
}
return View("ReportGenerator", viewModel);
一定要适当地初始化