MVC4 - 坚持"方法的参数不能从使用中推断出来"

时间:2014-09-18 08:10:37

标签: c# asp.net-mvc asp.net-mvc-4

我正在开发MVC4项目,在重新安装计算机和Visual Studio(2013)之后,我收到了错误

The type arguments for method 'EditRowTextBoxFor<TModel,TProperty>
(System.Web.Mvc.HtmlHelper<TModel>, 
 System.Linq.Expressions.Expression<System.Func<TModel,TProperty>>,
 object, bool, bool, bool, bool, string, object)'
cannot be inferred from the usage. Try specifying the type arguments explicitly.

当我使用带有lamda表达式的helpes编辑视图时。

此外,VS给了我另一个错误 -

One or more types required to compile a dynamic expression cannot be found.
Are you missing a reference?

到目前为止,我从未见过这个项目中的任何错误。

我几乎尝试了所有东西 - 我在配置中设置了.NET(4.5.1)和MVC的核心版本,我将System.Web.Mvc设置为不复制本地,我在ApplicationStart中添加了RazorViewEngine,但没有一个工作。我还重新安装了MVC4。

直到重新安装一切都很好。虽然我可以在IIS7中构建项目并运行它,并且一切都运行得很好,但它真的很烦人,因为我不能使用表达式而且Intellisence没有显示模型属性中的任何内容。

欢迎任何帮助!

1 个答案:

答案 0 :(得分:0)

Heureka!

问题在于引用,因为VS试图使用GAC的一些二进制文件。我删除了对非项目二进制文件的所有引用并再次创建它们并解决了问题。它似乎是计算机重新安装的结果,VS可以从GAC加载和查看已定义的二进制文件,但它无法编译项目。在新的引用之后,VS设法链接正确的版本并构建项目。