Model view controller mvc无代码隐藏强类型viewdata标头不工作

Model view controller mvc无代码隐藏强类型viewdata标头不工作,model-view-controller,header,code-behind,strong-typing,viewdata,Model View Controller,Header,Code Behind,Strong Typing,Viewdata,我将其添加到我的标题,并且能够访问ViewData及其所有内部以及所有mvc对象,如url和html。只要我添加“System.Web.Mvc.ViewPage”,我就无法访问任何Mvc类和帮助器方法。我不明白为什么会这样。最近我从mvc preview 5升级到了rc1,但我向rc1的过渡是完美的,没有任何错误或bug。在我周围进行了大量的探索之后,我找到了答案,这是因为我没有阅读官方的发行说明,而是浏览了一篇博客上的教程,但是要让这篇文章发挥作用,您需要将“/Views”目录中web.con

我将其添加到我的标题
,并且能够访问ViewData及其所有内部以及所有mvc对象,如url和html。只要我添加“
System.Web.Mvc.ViewPage
”,我就无法访问任何Mvc类和帮助器方法。我不明白为什么会这样。最近我从mvc preview 5升级到了rc1,但我向rc1的过渡是完美的,没有任何错误或bug。

在我周围进行了大量的探索之后,我找到了答案,这是因为我没有阅读官方的发行说明,而是浏览了一篇博客上的教程,但是要让这篇文章发挥作用,您需要将“/Views”目录中web.config文件中的
节点替换为

<!--
        Enabling request validation in view pages would cause validation to occur
        after the input has already been processed by the controller. By default
        MVC performs request validation before a controller processes the input.
        To change this behavior apply the ValidateInputAttribute to a
        controller or action.
    -->
    <pages
        validateRequest="false"
        pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
        pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
        userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <controls>
        <add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
      </controls>
    </pages>


我从一个预构建的web.config文件中添加了注释,这里有一个技巧。/Views文件夹下有一个web.config。哇,我没看见


感谢发布

这同样适用于MVC 2和MVC 1。尽管版本&PublicKeyToken更改为特定于版本2.0。。。。