我有两个工程,用的是同一个名字的虚拟目录Data,比如A工程的Data 是c:\data
    B工程的Data 是d:\data.操作了A工程后,我直接把Data虚拟目录指向d:\data,却打不开,只能把WEB工程删除掉后重新加上.csproj文件才行。错误如下:
   Visual Studio .NET cannot create or open the application. The likeliest problem is that required components are not installed on the local Web server. Run Visual Studio .NET setup and add the Web Development component.但是我操作B工程后,直接把虚拟目录重新指向c:\data,却没有任何问题。A的WEB工程能顺利打开,这是怎么回事?哪位能帮我分析有可能存在的原因吗?谢谢。

解决方案 »

  1.   

    我把某个工程拷贝一份后,把虚拟目录重新指向新的目录。打开新的那份,居然就报这个错。哪位知道WEB工程加载的时候去效验哪些文件吗?他们的顺序和逻辑关系是怎样的?
      

  2.   

    你用记事本打开根目录下的 工程名.Sln 文件修改一下应该就行了.
      

  3.   

    打开多个项目时,主要靠解决方案文件进行配置的.
    把工程文件:?.Slnz中的路径修改一下就可以了.
      

  4.   

    改这个没用啊,因为他是http://localhost/Data/Data.csproj。我把Data的虚拟目录重新设置了。但还是报错呀。
      

  5.   

    我的理解是这样的。打开.sln,找到http://localhost/Data/Data.csproj,然后到这个目录下面把工程加载进去。按这个理解,虚拟目录指向哪,就打开那里的WEB工程。为什么会报这个错呢。
      

  6.   

    先在空的工程文件夹设置web虚拟目录,然后再以新建虚拟目录的名字建web工程,这样应该可以随便移动位置,移动后只要修改iis设置就行了,我一直就是这样做的
      

  7.   

    我这个WEB工程是别人留下来的,早就建好的。会不会是IIS记录了上次虚拟目录的一些信息,所以打不开。其实把工程删除掉重新加,肯定是可以的。但是这样很麻烦,因为我经常在两个工程间操作,希望只要改虚拟目录的路径就可以了。
      

  8.   

    Data.csproj.config(好象是)中就是虚拟路径,你在这里面改就成了!
      

  9.   

    没有Data.csproj.config文件,只有Data.csproj.webinfo文件,但内容是这样的,好像也没办法改:
    <VisualStudioUNCWeb>
        <Web URLPath = "http://localhost/Data/Data.csproj" />
    </VisualStudioUNCWeb>