2017-07-26 68 views
1

我差不多完成了我的應用程序。我正在使用Xamarin.Forms(共享代碼的PCL項目)。將PCL切換到.Net Strandard有沒有好處?我已閱讀了一些文章,但仍不能100%確定升級是否有任何好處,例如安全性,性能還是更像是更豐富的API?感謝您的任何想法。Xamarin.Forms:PCL - > .Net標準升級

回答

2

安全性或性能沒有直接的改善,但是.NET標準將取代PCL。 PCL並不像標準那樣跨平臺,因此爲了使其真正跨平臺,切換到標準版是明智之舉。

此外,許多NuGet軟件包已經開始支持Standard,並且您不會在PCL庫中獲得該代碼的任何升級。所以回到安全和性能部分;如果在NuGet軟件包中發現錯誤,您將不會收到包含修復程序的更新,因爲您仍然使用「舊」PCL技術。這有一點延伸,但如果你想成爲面向未來的產品,則切換到.NET標準是強制性的。

現在我們有點醃製了。你不能從PCL中引用標準,反之亦然(在所有場景中不能100%確定,但我認爲你不能)。所以,現在你必須仔細檢查你使用的所有NuGets是否已經有.NET標準版本。如果沒有的話,如果沒有NuGet,你就無法完成PCL。 NuGet的創建者可以在一個NuGet中提供一個PCL和.NET標準版本,因此您可以從一個NuGet轉換到另一個NuGet。但看看你是否使用所有插件都是如此。

Adam Pedley here其實有一篇很好的文章。

+0

從PCL升級到.NET Standard時是否會有任何限制或例外情況發生? – Curiousity

+2

如果「nuget軟件包」尚不支持.Net Standard,那麼該怎麼辦?這是否意味着你將無法使用該軟件包? – user1

+0

很棒的答案!謝謝! – Pablo