当前位置: 首页 > 知识库问答 >
问题:

名称“viewbag”在当前上下文中不存在-Visual Studio 2015

齐高寒
2023-03-14

我再次开始在ASP.NET中进行开发,但在Visual Studio中遇到了一个小错误。我的.cshtml文件在使用一些razor函数时显示错误。例如“名称'viewbag'在当前上下文中不存在”。这里有一张图片:

我正在使用一个演示项目。您可以在这里找到这个项目:https://github.com/wintellight/angula-mvc-cookbook/tree/master/basicproject

我查看了其他几个线程,大多数都建议更新web.config文件。这两个配置文件已经存在了,由于它是一个相当流行的演示,我假设它包含了所有所需的配置。当然,我已经查看了这些配置文件,它们确实包含了建议的解决方案。

其他详细信息:

  • 我已经在解决方案上使用了clean&rebuild,但这没有什么改变。
  • 当我创建一个全新的MVC项目时,它确实起作用
  • 我的朋友也有同样的问题,我们都使用VS 2015和Windows 10
  • 我仍然可以运行该应用程序,并且它确实可以运行。

提前道谢。

共有2个答案

阴波峻
2023-03-14

更新Views文件夹中web.config文件设置中的版本号。

 <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

如果您已经通过nuget更新了MVC版本,那么应该是:

 <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

其他依赖项版本可能也需要更新。MVC帮助程序和对象视图中的编译和命名空间问题通常与视图文件夹中乱七八糟的web.config文件有关。

令狐经武
2023-03-14

我有这个问题,尽管有所有正确的配置。

结果是组件缓存中的一些坏文件,阻止了Razor视图识别ViewBag、Model和HTMLHelpers。删除这些文件解决了问题(下次打开Visual Studio时会创建这些文件的好版本)。

文件位于以下位置:

%LOCALAPPDATA%\Microsoft\VisualStudio\14.0\ComponentModelCache

删除所有四个文件:

  • Microsoft.VisualStudio.Default.Cache
  • Microsoft.VisualStudio.Default.Catalogs
  • Microsoft.VisualStudio.Default.Err
  • Microsoft.VisualStudio.Default.External

我随后在其他几台开发人员机器上看到了相同的问题,这个修复程序很快就解决了这个问题。

 类似资料:
  • 您好,我正在使用visual studio Professional2015,我创建了一个MVC5项目,但我有3个错误: 名称“viewbag”在当前上下文中不存在 名称“RenderBody”在当前上下文中不存在 名称“RenderSection”在当前上下文中不存在 我正在使用MVC5,我在网上搜索,找到了很多解决方案,但他们不适合我的情况。 这是\views\web.config 这是\we

  • 问题内容: 尝试使用WebMatrix启动网站时出现此错误。我有一个.cs文件可以拨打电话。 我的项目中有一个名为“ dbase”的数据库。自从使用WebMatrix启动网站以来,我没有web.config文件,也没有使用WebMatrix包的导入,因此我认为我不需要它们。我需要将代码包装在Razor标签中吗?这也给我造成了错误。 是什么原因造成的?有人对此有任何解决方案吗? 问题答案: 您需要一

  • 我正在遵循一个将PayPal集成到MVC4的指南。然而,我遇到了这个错误“名称”session“在当前上下文中不存在。”名称“response”在当前上下文中不存在(&)。 https://www.asp.net/web-forms/overview/getting-started/getting-started-with-aspnet-45-web-forms/checkout-and-payp

  • 我编写了一些代码来验证用户是否可以登录到酒店预订平台&我还添加了一个验证步骤。我在方法上得到一个错误。代码中的其他内容都很好。 我做了一些研究,以寻求可能的解决办法。 下面是我在StackOverflow上找到的解决方案:Assert方法错误 删除绑定后,我得到了同样的错误-Microsoft.VisualStudio.TestTools.UnitTesting;使用nunit.framework

  • 在我的MVC4应用程序中进行了重大重构之后,Razor在调试视图时显示了此错误: 名称“model”在当前上下文中不存在。 这是一段令人反感的代码: 我知道的用法是正确的。 为什么会出现这种情况?我该怎么修好它?

  • 我正试图为Facebook通知创建绑定。aar库。 然而,我得到了编译错误: 严重性代码说明项目文件行抑制状态错误CS0103名称'CreateAsset'在当前上下文中不存在FBNotificationsC:\users\Jakub\Documents\Visual studio 2015\Projects\FBNotifications\FBNotifications\OBJ\Release\