我編譯了一個針對不同框架(4.0和4.5)的同一個程序集。引用程序集版本的含義是什麼?爲什麼4.0.0.0?
你可以看到他們在dotPeek
我期望的,他們應該引用不同的架構庫(mscorlib程序,System.Core程序等),但我錯了。他們都引用相同的「版本= 4.0.0.0」。
這是否意味着內存中的.NET CLR加載應用程序將忽略這些版本號(4.0.0.0),但會「推送最新的可用版本」? D
還有CLR(我認爲loader是它的一部分)忽略目標框架信息?我的意思是如果CLR加載程序插入版本,它不需要使用目標信息...
或者我的編譯過程和msbuild配置有問題嗎?
謝謝。這是否意味着將NET40和NET45編譯的程序集添加到同一個NUGET包是沒有意義的?例如,NLog 4包含40和45(它也包含35,mono10,sl4,sl5,wp8,xamarin.iOS10 - 但我看到了這個意義)。 –
對於很多圖書館(比如我維護的),不需要同時發佈net40和net45二進制文件。但是,.NET Framework 4.5的特殊功能可能會影響庫,https://github.com/NLog/NLog/search?utf8=%E2%9C%93&q=%22NET4_5%22&type=所以我並不感到驚訝。 –