C#封裝DLL引用(僅顯示類文件DLL文件,相關輔助第三方DLL文件不進行生成)

如果大家平時生成項目的時候,應該會了解,生成類框架的時候,不僅會生成自身的類包DLL文件,引用其他的第三方DLL或從nuget包管理器中下載的DLL文件都會編譯出來。對於封裝成DLL文件給到其他項目使用不是很友好,還很麻煩,每次引用總是要添加許多DLL文件進去。綜上的解決方式如下:

這是CSDN的幫助說明文檔可供大家參考:https://docs.microsoft.com/zh-cn/dotnet/framework/tools/sn-exe-strong-name-tool

首先找到Sn.exe這個程序,改程序主要用來註冊引用DLL的,我的Sn.exe路徑如下:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64;

通過執行cmd程序 找到該目錄;然後執行如下命令:sn -k keyfile.snk 會生成一個文件;也是在上面的目錄下;將它拷貝到你的項目中。你項目的AssemblyInfo.cs中加入如下特性:[assembly: AssemblyKeyFile("..\\..\\keyfile.snk")];這裏是相對路徑,如果是其他路徑,大家可以調整。gacutil -i 執行DLL;再把你的DLL引用,右擊屬性,有一個複製本地選擇false。這樣清理下文件,重新生成類庫,發現就一個DLL引用了,這樣在其他項目中調用該引用,如果不報錯,那就OK了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章