簡體   English   中英

在TFS中構建多個解決方案時已經測試了已加載的DLL

[英]Test DLL already loaded when building multiple solutions in TFS

我正在TFS的循環中構建2個解決方案,並且在兩個解決方案中,我都有相同的測試DLL(第一個解決方案的目標是2.0,第二個目標是3.5)。 第一遍一切都很好,但是第二遍,我得到了:

API限制:程序集“ file:/// D:\\ Builds \\ 1 \\ Project \\ Main \\ Binaries \\ FF3.5 \\ Potato.dll”已從其他位置加載。 無法從同一appdomain中的新位置加載該文件。

我該如何解決,可以強制卸載DLL? 我可以對appdomain做些什么嗎?

謝謝,

您可以嘗試此解決方案,它只涉及更改查找所有測試dll的表達式http://geekswithblogs.net/jakob/archive/2010/06/08/tfs-2010-build-dealing-with-the-api-限制錯誤

編輯:

我對此進行了進一步調查,似乎Test Assembly Filespec(默認模板上的2. Basic->自動測試-> Test Assembly-> Test Assembly Filespec)正在使用FindMatchingFiles活動。 因此,您將不得不編寫一個僅與您認為應該加載的文件相匹配的模式。 我找不到使用該模式的指南,但類似的方法有效:

  1. _PublishedWebsites *** test * .dll(在_PublishedWebsites文件夾中查找名稱包含test的所有dll)
  2. 測試 .dll(在基本文件夾中查找名稱包含test的所有dll)
  3. * * test .dll(在基本文件夾下的所有文件夾中找到名稱包含test的所有dll)

像這樣的東西不在哪里:

  1. _PublishedWebsites ** \\ bin * test * .dll
  2. * \\ bin * test .dll
  3. _PublishedWebsites * test **** test * .dll

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM