我爲NUnit單元測試編寫了自定義類庫。它在{project root} \ bin \ Debug \文件夾中創建了一個包含我的.NET IL代碼的dll文件。在這個類庫中運行NUnit單元測試可以正常工作,但如果我嘗試再次編譯我的類庫,則會出現此錯誤。 NUnit不釋放鎖。這是什麼造成的?我怎樣才能防止這種情況發生?NUnit不會釋放自定義類庫DLL的鎖定...運行NUnit後無法編譯類庫
的Visual Studio錯誤的NUnit後編譯時會運行第一次:
錯誤{錯誤#} {類庫項目名稱}無法複製文件{類庫項目的根文件夾} +「\ BIN \調試\測試.dll「複製到」bin \ Debug \ Tests.dll「中。該進程無法訪問文件'bin \ Debug \ Tests.dll',因爲它正在被另一個進程使用。
因此,我可以更改代碼的唯一方法是關閉NUnit並重新打開NUnit。我正在使用NUnit 2.6。這非常煩人。
當我第一次開始使用NUnit(頭幾個月)時,它沒有這樣做。它上週開始鎖定文件。我更好奇如何防止這種情況,而不是如何解決這個問題。如果您找到解決方案,請告訴我。現在,我只是用Windows工具強制殺死鎖。 – MacGyver 2012-04-09 17:01:45
@MacGyver我更新了我的答案。使用程序集重新加載可能對此有所幫助? – 2012-04-09 17:05:29
謝謝你幫助賈斯汀..我會給你幾點分享這個知識..最後你的評論。如果您發現與我的工作流程不同的工作流程也會導致此問題,那麼知道這一點很有幫助。 – MacGyver 2012-04-09 17:28:36