mvc no codebehind не работают строго типизированные заголовки viewdata

StackOverflow https://stackoverflow.com/questions/615044

Вопрос

Я добавляю это в свой заголовок <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> и я могу получить доступ к ViewData и всем его внутренним компонентам, а также ко всем объектам mvc, таким как URL и html.Как только я добавлю "System.Web.Mvc.ViewPage<app.Models.tTable>" У меня нет доступа ни к каким классам mvc и вспомогательным методам.Я не понимаю, почему это так.Недавно я выполнил обновление с mvc preview 5 до rc1, но мой переход на rc1 был безупречным, без каких-либо ошибок или багов.

Это было полезно?

Решение

После рыбалки (много рыбалки) я нашел ответ, это потому, что я не читал официальные примечания к выпуску, а скорее просматривал руководство из блога, но в любом случае, чтобы это заработало, вам нужно заменить <pages> узел в файле web.config в вашем каталоге "/Views" с

<!--
        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.Ух ты, я этого не заметил.

Спасибо за публикацию

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top