我从网站下载了一个测试网站代码,然后将其转换为visual studio 2008.但是,我得到的编译错误如下:
“使用在应用程序级别之外注册为allowDefinition ='MachineToApplication'的部分是错误的。此错误可能是由于虚拟目录未在IIS中配置为应用程序而引起的。”
任何人,解决问题PLZ ?? !!
答案 0 :(得分:5)
这取决于您运行应用程序的方式。
如果您在运行它时运行的是从VS2008运行任何应用程序时启动的临时asp.net网络服务器
或
在系统IIS中配置Web应用程序。
您可能会收到此错误,因为应用程序需要在本地IIS中进行配置 而不是临时。 asp.net网络服务器。因此,将应用程序文件移动到Inetpub / wwwroot文件夹中。并在运行之前将其配置为Web应用程序。
参考。
http://forums.asp.net/t/1031775.aspx<< - 先试试这个
http://umbraco.org/documentation/books/install-umbraco-4-on-windows-vista/configure-iis-website
http://www.shabdar.org/virtual-directory-not-being-configured-as-an-application-in-iis.html
答案 1 :(得分:2)
当您在Visual Studio中打开网站但意外打开根文件夹的父网站时,最常出现此问题。例如,假设您有一个位于C:\ MyProjects \ Website1的网站,其中Website1文件夹是网站的根目录。当您从Visual Studio打开此网站时,系统会要求您指定网站的根文件夹 - 选择Website1文件夹是必不可少的。如果您不小心选择了MyProjects文件夹,那么Website1文件夹中的Web.config文件现在位于其中一个网站的子文件夹中。由于该Web.config文件包含该元素,以及其他应用程序级别的设置,您将收到上述错误。
此错误的修复(在大多数情况下)是关闭项目并从Visual Studio重新打开它,确保选择适当的文件夹。
快乐编程!
参考:http://scottonwriting.net/sowblog/archive/2010/02/17/163375.aspx
答案 2 :(得分:0)
如果在使用IIS时遇到此错误,请尝试使用Add Application
而不是Add Virtual Directory
。
参考this answer。