我正在 MVC3 ( http://www.colombiatrolley.com/sitrolley ) 中开发一个应用程序。在我的计算机上它运行正常,但是当我将它上传到服务器(托管服务)时,我收到此错误:
解析器错误消息:在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的部分是错误的。此错误可能是由未在 IIS 中配置为应用程序的虚拟目录引起的。
我知道这是一个非常常见的错误,但我还没有修复它。
我正在 MVC3 ( http://www.colombiatrolley.com/sitrolley ) 中开发一个应用程序。在我的计算机上它运行正常,但是当我将它上传到服务器(托管服务)时,我收到此错误:
解析器错误消息:在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的部分是错误的。此错误可能是由未在 IIS 中配置为应用程序的虚拟目录引起的。
我知道这是一个非常常见的错误,但我还没有修复它。
某些配置部分只允许在应用程序的“根”中,然后authentication
部分就是其中之一。
您需要配置 IIS 以将您的站点作为应用程序运行,而不是现有应用程序中的子目录。
对于 IIS 7+,右键单击包含您的 Web 应用程序的目录,然后选择“转换为应用程序”。
编辑:
Arie van Someren 是对的。仔细查看您的错误,您希望<authentication>
配置位于 web.config 上一级,而不是视图中的 web.config。
我有同样的问题。我通过删除执行“构建>发布”后出现的 obj 文件夹来解决它。