VS2019 - ViewBag не существует в текущем контексте - PullRequest
1 голос
/ 29 сентября 2019

Я установил VS 2019 для Mac и начал создавать приложение.На мой взгляд, я получаю следующие ошибки: Имя ViewBag не существует в текущем контексте.Макет имени не существует в текущем контексте.

В чем может быть причина проблемы и как мы можем решить эту проблему?

1 Ответ

1 голос
/ 29 сентября 2019

Возможно, вам не хватает файла ../Views/Web.config, потому что вы создали проект из пустого приложения ASP.NET вместо использования шаблона ASP.NET MVC.Или Вам нужно добавить специфичную для MVC конфигурацию Razor в свой файл web.config.

В своем файле web.config вы должны добавить следующие строки:

<configSections>
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</configSections>

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
      <!-- Your namespace here -->
    </namespaces>
  </pages>
</system.web.webPages.razor>
...