我正在开发一个DLL,用于我所使用的webservice。我添加了一些新代码,并希望通过NUnit测试套件进行编译和调试。我已经采取的步骤如下:
1. 在Visual Studio 2008中编写我的代码,输出目录指向我的应用程序bin目录(C:\Program Files\etc...)。
2. 当我启动我的webservice进程并附加到它时,会收到警告,表示我的程序没有构建调试信息。我发现如果将.pdb文件复制到
3. 我停止了我的应用程序,重新构建了我的DLL,然后重新启动了Web应用程序。
4. 进一步检查后,我发现当我通过进程资源管理器停止我的应用程序并删除Temporary ASP.NET目录下的子目录时,重新启动进程时子目录会被重新创建,但它们不包含我刚刚构建的新DLL版本,而是旧版本的DLL,也没有PDB文件。
总之,我的问题是如何让Visual Studio在临时ASP.NET目录中同时构建和更新DLL?更重要的是,如何让Visual Studio自动将PDB文件复制到相同的临时目录中,而无需任何批处理帮助?
理想情况下,我希望避免将我的DLL自动复制到临时目录中,但是通过今天的搜索,我没有找到任何适合的方法来做到这一点,因为ASP内部机制相当超出了我的控制范围。
注意:当我通过外部可执行文件访问我的webservice时,我已将NUnit的影子复制功能禁用。
1. 在Visual Studio 2008中编写我的代码,输出目录指向我的应用程序bin目录(C:\Program Files\etc...)。
2. 当我启动我的webservice进程并附加到它时,会收到警告,表示我的程序没有构建调试信息。我发现如果将.pdb文件复制到
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\...
目录中,那么我就可以避免这个警告,但仍然无法进入我的代码部分。3. 我停止了我的应用程序,重新构建了我的DLL,然后重新启动了Web应用程序。
4. 进一步检查后,我发现当我通过进程资源管理器停止我的应用程序并删除Temporary ASP.NET目录下的子目录时,重新启动进程时子目录会被重新创建,但它们不包含我刚刚构建的新DLL版本,而是旧版本的DLL,也没有PDB文件。
总之,我的问题是如何让Visual Studio在临时ASP.NET目录中同时构建和更新DLL?更重要的是,如何让Visual Studio自动将PDB文件复制到相同的临时目录中,而无需任何批处理帮助?
理想情况下,我希望避免将我的DLL自动复制到临时目录中,但是通过今天的搜索,我没有找到任何适合的方法来做到这一点,因为ASP内部机制相当超出了我的控制范围。
注意:当我通过外部可执行文件访问我的webservice时,我已将NUnit的影子复制功能禁用。
C:\Program Files\MyApp\Bin
文件夹中,当应用程序启动时,ASP.NET 内部将其复制到那里。 - wfoster