Json.Encode缺少mvc 4程序集引用

时间:2012-10-01 22:40:08

标签: json asp.net-mvc-4 assembly-references

我试图在MVC 4中调用Json.Encode(...)方法,但我收到错误:The name 'Json' does not exist in the current context.

我尝试添加System.Runtime.Serialization命名空间,其中包含Json类,但Json类的这个特定实例没有Encode方法。

我在这里缺少什么装配?

这是我的确切代码:

{ url: '@Url.Action("DeleteDefinitionRule")', editData: 
    { companyCode: 'LO', definitionID:@Html.Raw(Json.Encode(Model.DefinitionID)) } }

3 个答案:

答案 0 :(得分:68)

  1. 解决方案资源管理器中的参考资料>右键单击>添加参考
  2. 在装配下>框架,搜索“System.Web.Helpers”双击
  3. System.Web.Helpers版本2.0.0.0并单击确定。找到
  4. 您刚添加的System.Web.Helpers>右键单击它>属性。
  5. 将“复制本地”从false更改为true
  6. 现在@Json.Encode应该可以工作。

    <强>更新

    enter image description here

答案 1 :(得分:4)

要明确的是,即使您在项目中添加了正确的引用,仍然需要在Razor页面顶部添加此行:

@using System.Web.Helpers;

答案 2 :(得分:0)

显然,如果您创建一个新的空Web项目,并尝试将所有内容移动到区域中,则会删除Helpers库。但如果你把它创建为一个互联网项目,它们仍然存在。我创建了一个新项目作为互联网项目,现在一切正常。