2017-11-18 168 views
1

我建立一個Xamarin的應用程序,我有一個PCL其中面向.NET 4.5框架我的共享代碼的引用。我也有一個庫,基本上實現了我的Xamarin應用程序的服務訪問層在另一個庫,其目標是.NET標準2.0。添加到一個類庫,它面向.NET標準2.0到Xamarin PCL其面向.NET標準4.5

的問題是,當我嘗試引用後,Visual Studio中給了我以下錯誤:

Project [Service access library] targets '.NETStandard,Version=v2.0'. It cannot be referenced by a project that targets '.NETPortable,Version=v4.5,Profile=Profile111'.

我不爲什麼,理解,因爲,從我的理解,.NET標準展位上比.NET 4.5框架更低的抽象層次。任何有識之士將不勝感激。

回答

3

否,它支持.NET標準.NET Framework 2.0的的最低版本是.NET 4.6.1(在.NET核心的2.0工裝VS 2017.3+)。 .Net 4.7.1無論使用什麼工具,都可以真正支持.net標準2.0。

.NET標準2.0具有大的API表面,實體框架核心2.0和asp.net核心2.0基於.NET標準2.0 API的開發。

注意,PCL輪廓111個代表.NET 4.5和Windows 8.1和.NET這些標準1.1共同支持的。

由於最新xamarin形成2.5支持.NET 2.0的標準,我建議你停止使用PCL項目,並使用.NET標準的2無處不在。

結帳我做xamarin形式,其在https://github.com/ysmoradi/ToDo

針對使用.NET標準2和EF核心2 + SQL精簡版同時在Android &的iOS您也可以面向.NET Framework庫如的NuGet包樣本應用程序https://github.com/davideicardi/DynamicExpresso它適用於移動設備,但僅限於.net框架。你以前無法使用它,現在你可以。

如果你想PCL庫的NuGet軟件包添加到您的項目,看看https://github.com/ysmoradi/ToDo/blob/master/src/ToDo/ToDo.csproj#L5

因此,更新xamarin形式2.5,與.NET 2.0的標準更換你的PCL和你去好:)

的Visual Studio 2017.5創建使用.NET標準,而不是PCL,因爲這是一個未來的項目。

相關問題