Asp.net mvc 4 为MVC应用程序使用虚拟目录时获取global.asax文件错误

Asp.net mvc 4 为MVC应用程序使用虚拟目录时获取global.asax文件错误,asp.net-mvc-4,iis-7,Asp.net Mvc 4,Iis 7,我在IIS服务器上部署了一个工作的MVC4应用程序。我想在IIS中的另一个网站内复制此MVC应用程序,因此我使用虚拟目录将工作MVC站点的Bin、视图、脚本和图像链接到新站点。然后,我将global.asax和web.config文件复制到新站点的根目录中。查看新站点的内容视图时,除了文件夹是虚拟的之外,它与原始站点的目录布局相同 在浏览器中运行新站点时,出现以下错误: Parse Error: Parser Error Message: Could not load type 'PrApp.M

我在IIS服务器上部署了一个工作的MVC4应用程序。我想在IIS中的另一个网站内复制此MVC应用程序,因此我使用虚拟目录将工作MVC站点的Bin、视图、脚本和图像链接到新站点。然后,我将global.asax和web.config文件复制到新站点的根目录中。查看新站点的内容视图时,除了文件夹是虚拟的之外,它与原始站点的目录布局相同

在浏览器中运行新站点时,出现以下错误:

Parse Error: Parser Error Message: Could not load type 'PrApp.MvcApplication'.
<%@ Application Codebehind="Global.asax.cs" Inherits="PrApp.MvcApplication" Language="C#" %>
分析错误:分析程序错误消息:无法加载类型“PrApp.mvcapapplication”。
我已经读过了,但找不到任何关于这一点的东西。大多数处理错误的程序集或缺少名称空间,但由于我知道程序集可以工作,我不确定为什么会收到此错误。我的假设是,这个网站的功能与另一个网站完全相同,因为文件和dll都是“存在的”,但这可能是一个错误的假设,因为我缺乏编写代码的经验

我的目标是在多个IIS站点中运行相同的mvc应用程序,这样每个站点都可以有自己的根目录,而我可以维护单个代码库

非常感谢您的帮助

更新: IIS的图像突出显示的站点是具有虚拟目录的站点。另一个扩展站点是正在运行的MVC应用程序

更新2:
我从辅助站点的根目录中删除了global.asax文件,错误消失了。现在我得到以下错误:403-禁止:访问被拒绝。我还尝试将我的虚拟目录转换为应用程序,但没有成功。我不确定这是否是进步。如果您有任何建议,请告诉我。

好的。好吧,似乎没有什么能提供我们想要的,我们最终为我们托管的站点构建了真正的目录结构,然后在每个站点中创建html页面,根据需要通过webAPI和/或iFrame与应用程序进行通信


我唯一能想到的另一件事是以编程方式在数千个站点上维护相同的代码库。如果有人有其他想法,我洗耳恭听

您是否将虚拟目录转换为应用程序?你能展示一下你的IIS网站结构吗?谢谢!我没有制作这些应用程序-我已按要求添加了图像。因此,以您的mvc2站点为例,从外观上看,它不是其他IIS站点的子站点。这是它自己的网站。在这种情况下,没有必要将bin和images这样的目录设置为虚拟目录。只需将它指向磁盘上的位置。是的,但是每个站点都没有自己的根。它变成了一个共享根目录,这使得上传自己的文件、谷歌验证文件、传真等变得不可能。我不确定你需要什么样的架构,但是,从你上次的评论中,我的第一个想法是拥有一个应用程序,然后根据需要在共享位置为每个用户创建目录。为每个用户创建一个新的应用程序只是为了存储一些文件,这似乎有些过分。