我需要小帮助才能将对象类型传递给控制器。我试着直接传递物体, 这是例外
System.Web.Mvc.HtmlHelper<dynamic>
没有适用的方法
名为ActionLink
,但似乎有一个名称的扩展方法
无法动态分派扩展方法。考虑铸造
动态参数或调用扩展方法没有
扩展方法语法。
即使我添加了类型转换的代码,但仍然会抛出编译错误,如上所述
InProgressGrid.Column(header: "File Name", columnName: "FileName",format:(item) => Html.ActionLink(((string)item.FileName), "DownloadReport", (Domain.UserObject)item ,null))
有什么方法可以将多个参数传递给控制器动作方法
InProgressGrid.Column(header: "File Name", columnName: "FileName",format:(item) => Html.ActionLink(((string)item.FileName), "DownloadReport", new {FileName = item.FileName,PK= item.PartitionKey },null)),
现在当我运行应用程序时,我只看到一个属性即。传递了FileName,但没有将PartitionKey传递给Controller的动作参数..
上述条件的全局路由是否有任何变化
请求帮助我,这是非常紧急的
答案 0 :(得分:0)
您需要添加路线:
routes.MapRoute(
"ReportDownload", // Route name
"Reports/{PK}/{FileName}", // URL with parameters
new { controller = "Reports", action = "DownloadReport", PK = "", FileName="" } // Parameter defaults
);
只需将控制器名称替换为您的名称即可。