日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Visual Studio 2015和2017里面应该创建哪种 Class Library

發布時間:2023/12/4 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Visual Studio 2015和2017里面应该创建哪种 Class Library 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

微軟有些時候是一副不講道理的大家長作風。一個例子就是它在 Visual Studio 2015/2017 里面配置了一大堆普通人沒法理解的 Class Library 模板。

你真的知道應該選哪個嗎?


這就是 VS2017 里面你可能熟悉的長列表(而且因為我沒有安裝 UWP 開發項目,這個表還不完整)。其實仔細研究一下,也沒有那么可怕了,它們實際上只有兩類。

平臺相關的 Class Library

從 .NET Framework 1.0開始,Class Library (.NET Framework)這個類型就存在了。所以閉著眼睛你也知道這種類型的工程只能被針對 .NET Framework 工程使用。有了這個基本認識,你同樣也就知道 iOS、tvOS、watchOS、Android 和 UWP 等模板也是平臺相關的,只有同一平臺的工程才能夠使用它。

雖然這樣的模板生成的工程不能跨平臺使用,但是它依然是一個合理劃分項目粒度的好方式,使得每個 Class Library 內部高聚合,和其他工程之間低耦合。

可以跨平臺使用的 Class Library

Class Library (Portable) 是微軟最先想到的跨平臺 Class Library 方案,一般叫做 PCL。由于它實際使用中的種種限制,微軟現在已經不再推薦。

用來取代 PCL 的新方案,就是 Class Library (.NET Standard)。相比 PCL,這種類型的工程使得開發人員可以使用更大的 API 集合。也許你還需要一些實踐來好好體會,不過現在簡單背一下答案就好了,“如果你需要開發跨平臺的項目,這個模板就是你需要的”。

當然,還有幾個特例需要特別說明,.NET Core 和 Xamarin.Forms。

Class Library (.NET Core) 模板創建的工程只能被其他 .NET Core 項目使用。這當然和其他平臺相關的 Class Library 模板一樣。但是 .NET Core 是個特殊的平臺,它可以運行在多個操作系統之上(這就出現了又一個跨平臺)。.NET Core 的跨“平臺”是指跨多個操作系統(Windows/Mac/Linux)。而 .NET Standard 的跨“平臺”,是指它能夠被多個平臺(.NET Framework/.NET Core/Mono/Xamarin/Unity)的工程所引用。

Class Library (Xamarin.Forms) 也比較特殊。首先它暫時是基于 PCL 的模板,未來應該會升級為基于 .NET Standard 的模板。其次,能夠引用它的工程,當前限制是 Xamarin 的相關工程,未來可能會增加其他工程類型。

如何在這些工程之間遷移代碼

方式很多,不過最土的還是剪切粘貼了。你可以自己一一嘗試。

本來嘛,這就是拋出的一塊磚,希望沒有打疼你,畢竟微軟未來總會找到一個做文檔的角度來把這些問題講清楚吧。

原文地址:http://weibo.com/ttarticle/p/show?id=2309404123912014305645


.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注

總結

以上是生活随笔為你收集整理的Visual Studio 2015和2017里面应该创建哪种 Class Library的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。