我已将 MVC 站点升级到 MVC 4.0 版、.NET Framewrok 4.5 版。这样做之后,我的视图中出现了运行时错误:
方法 Microsoft.Web.Mvc.LinkExtensions.ActionLink:类型参数“ContactCentre.Controllers.LogOnController”违反类型参数“TController”的约束。
以下是引发异常的代码:
Url.Action<LogOnController>(c => c.LogOff())
约束 TController 是检查类型是否为 Controller 类型。我的控制器 LogOnController 确实继承自 Controller,因此满足了该约束。
我认为问题出在我的 Microsoft.Web.Mvc 库版本上。这是运行时版本 v4.0.30319,版本 3.0.0.0。我认为这意味着它的目标是 MVC 版本 3。
是否有与 MVC 版本 4 兼容的 Microsoft.Web.Mvc 版本?还是我在叫错树?欢迎任何帮助。