【发布时间】:2018-10-28 05:54:00
【问题描述】:
概述
我正在尝试将现有的 MVC 4 Web 应用程序修补到 MVC 5 以及从 Oracle DataAccess 11g 到 12c。它在 Visual Studio 中本地运行良好,没有错误,功能齐全。但是,当我将它移动到开发服务器时,我收到以下错误:
我查看了以下 Stack Overflow 帖子,并在那里尝试了修复,但没有任何运气:
- The name 'model' does not exist in current context in MVC3
- Razor View throwing "The name 'model' does not exist in the current context"
我认为它们在这里并不适用,因为这些帖子中的错误发生在 VS 中,这对我来说很好。除非我找错地方了,否则我的问题似乎与开发服务器上 IIS 中的设置有关。也就是说,如果您希望我发布 web.config 文件,我可以这样做。
应用程序
如上所述,我尝试了我提供的两个链接中的所有修复,但无济于事。我的 Web.config 文件似乎都还可以;至少我能够毫无问题地在本地运行。
我还尝试将所有 DLL 的 Copy Local 设置为 True,这有点盲目,没有做任何事情。
发布站点时,我以“任何 CPU”为目标,并且不进行预编译。我尝试摆弄这两种设置,但似乎没有什么不同。
服务器资料
我的开发人员不愿意或无法帮助解决这个问题。当我去找他们时,他们只是说“你想让我做什么,这是开发服务器。”服务器的东西并不是我的强项,所以我处于“戳和祈祷”模式。
服务器正在运行带有所有最新补丁的 Windows Server 2008 R2。
当我查看控制面板的“已安装程序”部分时,它显示.NET Framework 4.7.1。
当我查看与应用程序关联的 IIS 应用程序池的基本设置时,它显示 .NET Framework 版本为 .NET Framework v4.0.30319,托管管道模式设置为 integrated。它与 4.7.1 不同是有原因的吗?同样,IIS 不是我的专业领域。
当我查看应用程序池的高级设置时,它显示框架版本为4.0,“启用 32 位”为false。如果您还想了解其他设置,请告诉我。
服务器上安装了 32 位和 64 位版本的 Oracle 12c。我与 DBA 验证了这一点。
这非常令人沮丧,因为它在本地似乎很好,而且我不确定在哪里查看服务器上的不同之处。我从我部门的服务员那里得到零帮助。非常感谢这里的任何帮助。
更新 感谢 cmets,它们包含了很好的信息。我已经尝试过确保 web.config 文件可用,而且它们确实可用。我最终解决此问题的方法是在 IIS 中删除并重新创建“站点”。我不知道为什么要修复它。正如我在最初的评论中所说,我不是服务器人
【问题讨论】:
标签: c# asp.net-mvc iis oracle12c