我有一个Windows 2003 R2服务器。 我必须运行.NET MVC3网站。 我已经安装了所有运行时环境(1,2和4),我已经安装了所有的MVCS框架(3,4),但这个错误不会消失。
我有一个应该是在地方的意见web.config中。 我按照所有各进出计算器的解决这个问题。 我也部署在我的bin文件夹中使用添加可部署的依赖所有DLL(右键单击MVC项目)。
在这一点上我不知道自己还能做些什么。 跑出去的想法和解决方案在线。
我已经卸载并重新安装所有的运行环境,框架等。在我的本地计算机上运行得很好(Windows 7中),但是当我部署,我得到以下错误。
编译器错误信息:CS0103:“ViewBag”这个名字不会在目前情况下存在
源错误:
1号线:@ {
2号线:ViewBag.Title = “主页”;
3号线:}
第4行:<H2> @ ViewBag.Message </ H2>
源文件:d:\ FamilyDermMVC \查看\首页\ Index.cshtml行:2
Answer 1:
听起来像是你错过了在下面Web.Config
在views文件夹 :
/Views/Web.Config
<?xml version="1.0"?>
<configuration>
<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"> // <-- this line and contents are important
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
观点典型地从导出System.Web.Mvc.WebViewPage
其在web.config配置。 如果不与应用程序部署DLL,基类是安装在以下DLL:
大会System.Web.Mvc.dll程序,v4.0.30319
C:\ Program Files文件(x86)的\微软ASP.NET \ ASP.NET MVC 3个\组件\ System.Web.Mvc.dll程序
更新1
如果手动从MVC X到MVCŸ升级,这需要改变你的目标.Net框架(比如4.5〜4.6),如果你有旧引用了明显的旧文件不能使用(点MVC 5,而不是6)与较新的文件相结合(例如MVC 5的DLL不能针对的System.Web在4.6使用)。
Answer 2:
我看到这张贴一段时间回来,但认为我想补充我的经验,这个问题无论如何。
在创建一个新的MVC asp.net项目我得到同样的错误了蝙蝠的权利。 我简单地点击BUILD - >清理解决方案,然后生成解决方案,它解决了这一问题对我来说。 还是不明白为什么错误首先来到约但正如它出错了之后首先产生的。
Answer 3:
我有同样类型的问题(HTML助手代码不被认可)。
我不知道它是如何开始,但我通过更换以下解决它:
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
同
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
</appSettings>
在意见web.config文件。
发现我的解决方案在这里
Answer 4:
好。 我修好了它。 我不知道到底是什么固定的,但我想这整个“九里”修复它。
我删除(删除程序)所有MVC扩展工具,无论您发现有。
然后重新安装,无需拆卸,.NET运行库。 2和4。
然后安装MVC3和mvc4回来。 我去到ASP.NET的最新版本。
然后我做了同样的事情在我的笔记本电脑。
注意:您将需要电源外壳2.0才能在Windows2003的服务器上安装MVC4。 你需要找到该服务器的特定下载。
一旦我做到了,回收的应用程序池并重新启动服务器。
砰...加载页面。
我希望这有助于在未来的其他人。
谢谢您的回答你。
PS:我的感觉是,我没有在我的笔记本电脑和服务器MVC3(或mvc4)相同版本(或发行)分别。
Answer 5:
似乎有很多解决方案以及各自的成功率参差不齐。
对我来说,在这条线的次数的改变版本号/ web.config文件的工作:
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
我改变4.0.0.0 5.0.0.0到,保存,关闭该解决方案,重新打开,然后瞧! 恼人的红色波浪线是gones和智能感知返回
Answer 6:
Resharper is probably causing it
Go to Visual Studio/Tools/Options/Resharper
Then click Suspend Now / then Resume Resharper and your day will no longer be gray but probably your razor window will have more gray in it!
Answer 7:
在我来说,我得到了这个问题,因为我试图运行一个MVC 3项目进入MVC 2启用平台。
然后我在我的系统上安装了MVC 3的问题消失
Answer 8:
安装ASP.NET MVC 5的Visual Studio 2012的支持从http://www.asp.net/mvc/mvc5解决了我的问题。
Answer 9:
Answer 10:
无论其在web.config文件中做了所有正确配置的我有这个问题。
发现是在组件缓存一些不好的文件,防止剃刀观点,不认识ViewBag,型号和HtmlHelpers。 删除这些文件解决了这个问题 (这些文件的良好版本中创建我打开Visual Studio的下一次)。
请按照以下路径发现这些文件:
C:\Users\your.name.here\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache
删除所有四个文件:
- Microsoft.VisualStudio.Default.cache
- Microsoft.VisualStudio.Default.catalogs
- Microsoft.VisualStudio.Default.err
- Microsoft.VisualStudio.Default.external
我闭上我的项目,删除该路径上的文件并重新打开我的项目,清理解决方案,并重新建造它,问题就解决了
删除您的临时ASP.NET文件也有帮助。 C:\ Users \用户your.name.here \应用程序数据\本地的\ Temp \临时ASP.NET文件。
这样,您就可以解决所有相关的视图中的智能错误(剃刀MVC)尝试了这一点,让我知道这对我的作品。
谢谢!
文章来源: The name 'ViewBag' does not exist in the current context