簡體   English   中英

單元測試 - 綁定裝配時忽略文化

[英]Unit Testing - Ignore culture when binding assembly

我對C#中的單元測試非常陌生。 我在Visual Studio中添加了一個測試項目,但是當我嘗試運行測試時,它們會失敗,抱怨程序集綁定失敗。

所以我啟用了日志記錄,並注意到測試正試圖從特定於文化的目錄(一個不存在的目錄)加載我的DLL。

例如,如果測試項目的DLL存在於C:\\ MyProject \\中 ,它將在C:\\ MyProject \\ en-GB \\中查找正在測試的程序集。

en-GB的唯一引用是被測裝配的assembly assembly屬性。 如果我將該屬性的值更改為en-US ,單元測試綁定器將在/en-US/搜索DLL

我可以以某種方式指定我不想要這種行為嗎?

從文檔中,

編譯器使用該屬性來區分主程序集和附屬程序集。 主程序集包含代碼和中性文化的資源。 附屬程序集僅包含特定文化的資源,如[assembly:AssemblyCultureAttribute(“de”)]。 將此屬性放在程序集上並使用除空字符串(“”)之外的其他內容作為區域性名稱將使此程序集看起來像附屬程序集,而不是包含可執行代碼的主程序集。 使用此屬性標記傳統代碼庫會破壞它,因為沒有其他代碼能夠在運行時找到庫的入口點。

所以基本上,不要使用該屬性。 你實際上在測試本地化的衛星組件嗎?

暫無
暫無

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

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