[英]dnx451 actually means .net 4.5
我使用Visual Studio 2015 RC創建了兩個項目
MyLib
,其目標框架是.NET Framework 4.5.1
一個ASP.NET 5項目MyWebApp
,它引用了project.json
MyLib
:
“frameworks”:{“dnx451”:{“依賴項”:{“Lib01”:“1.0.0- *”}},}
當我嘗試構建MyWebApp
,會發出警告:
MSB3274:無法解析主要參考“C:\\ MyWebApp \\ src \\ MyLib \\ bin \\ Debug \\ MyLib.dll”,因為它是針對“.NETFramework,Version = v4.5.1”框架構建的。 這是比當前目標框架“.NETFramework,Version = v4.5”更高的版本。
如果我將MyLib
的目標框架更改為4.5,警告將消失。
看起來MyWebApp
的目標是.net framework 4.5而不是4.5.1? 如何使MyWebApp
引用一個以.net 4.5.1為目標的庫?
這個警告似乎沒有多大意義。 即使web項目的.net版本設置為大於庫的例如,它仍然可見
"net46": {
"dependencies": {
"Lib01": "1.0.0-*"
}
}
另一個有趣的事情是,可以在.NET Framework 4.6(最新版本)中構建庫,並且仍然可以在dnx451項目中構建/運行和使用類(我已經將只讀的Queue只能在4.6中作為IReadOnlyCollection從lib傳遞到Web應用程序)。
除此之外,據我所知.net 4.5.1沒有引入API的變化,測試4.5和4.5.1之間的差異並不是很容易
最后,如果你想擺脫警告,你可以創建vNext類型類庫(包),然后從ASP.NET 5應用程序中引用它,所以你的類庫可以使用與web應用程序相同的dnx451。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.