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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

自包含 .NET Core应用程序

發(fā)布時(shí)間:2023/12/4 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自包含 .NET Core应用程序 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? .NET 是完全開(kāi)源的,而且 .NET Core 是一個(gè)您可以免費(fèi)下載的開(kāi)源與跨平臺(tái) framework。您可以到?http://dot.net?獲取?Mac、Windows 與大多數(shù)的 Unix 系統(tǒng)的版本。還可以使用免費(fèi)、跨平臺(tái)的?Visual Studio Code,用VS code您就可以隨時(shí)隨地編寫 C# 與 F#。

  有兩種方式來(lái)部署一個(gè) .NET Core 應(yīng)用程序,FDD 與 SCD。三個(gè)字的縮寫可能看不懂,它們的意思是 Framework-dependent 與 Self-contained。當(dāng) .NET Core 安裝在 Windows 中,它會(huì)存放在 C:\Program Files\dotnet。在「shared」文件夾內(nèi)會(huì)有一堆可以共享的 .NET 程序集。這里可以有多個(gè)文件夾,就如同下圖,您可以看到我的文件夾。您也可以安裝多個(gè) .NET Core 的不同版本。

  當(dāng)您安裝您的應(yīng)用程序與它的 dependencies 而并非 .NET Core 本身,這時(shí)您就會(huì)需要 .NET Core 已經(jīng)被安裝在目標(biāo)的機(jī)器上。對(duì)于 Web App 或有很多應(yīng)用程序的系統(tǒng)來(lái)說(shuō)并沒(méi)有什么問(wèn)題,但如果我想要寫一個(gè)應(yīng)用程序,而且只用一個(gè) zip 壓縮包給你或在u盤上,而我就想要它能運(yùn)行。我將會(huì)包含 .NET Core 在其中,而整個(gè)應(yīng)用就是 Self Contained 部署。

  而這樣將會(huì)使我的「Hello World」應(yīng)用程序變得大于我使用現(xiàn)存的 system-wide 安裝,但我知道它就是可以 Work,因?yàn)樗鼘?huì)是完全獨(dú)立的。

  如果我以 self-contained 的方式來(lái)部署我的應(yīng)用程序,有一點(diǎn)很重要的是,我將會(huì)有責(zé)任要維護(hù) .NET Core 并讓它保持在最新的版本。我還需要提前決定我的目標(biāo)平臺(tái)。如果我想要讓它在 Windows、Mac 與 Linux 上執(zhí)行成功,我將需要囊括那些目標(biāo)平臺(tái)并為它們構(gòu)建部署套裝。這些大多都很直觀,不過(guò)還是知道一下比較好。

  我將拿我的小小應(yīng)用程序(我只是用一個(gè)「dotnet new」的應(yīng)用程序)并在文本編輯器中修改 project.json。

  我的應(yīng)用程序是一個(gè) .NETCore.App,但它將不會(huì)使用已經(jīng)安裝的 .NET Core 平臺(tái)。它將使用本地版本,所以我從這個(gè) dependency 刪除「type=’platform’」。

"frameworks": {
?
"netcoreapp1.0": { ?
?
"dependencies": { ?
? ?
"Microsoft.NETCore.App": { ?
? ? ?
"version": "1.0.1"}}} }

  接下來(lái)我寫了一個(gè) runtimes 的部分來(lái)指定我想要針對(duì)哪些平臺(tái)。而這里有一個(gè)全部 Runtime ID 的清單。

"runtimes": { ? ?
"win10-x64": {}, ? ?
"osx.10.10-x64": {},
"ubuntu.14.04-x64": {}}

  在執(zhí)行「dotnet restore」您會(huì)想要像這樣構(gòu)建:

dotnet build -r win10-x64 dotnet build -r osx.10.10-x64 dotnet build -r ubuntu.14.04-x64

  然后發(fā)布版本在您測(cè)試之后。

dotnet publish -c release -r win10-x64 dotnet publish -c release -r osx.10.10-x64 dotnet publish -c release -r ubuntu.14.04-x64

  一旦這個(gè)完成,我就有了我的應(yīng)用程序獨(dú)立在 n 個(gè)文件夾,并準(zhǔn)備好部署到任何我想要的系統(tǒng)。

  您可以在 Win10 文件夾看到我的「MYAPPLICATION.exe」(我的叫做 scd.exe)可以直接執(zhí)行,而并非像開(kāi)發(fā)者那樣用「dotnet run」來(lái)執(zhí)行。

  在?.NET Core Docs?里有許多不錯(cuò)的文章,教您如何調(diào)整與精準(zhǔn)地定義要為您的 self contained 應(yīng)用程序部署什么。您可以對(duì).NET Core?做大量的修整,而有人說(shuō)那將會(huì)變得越來(lái)越自動(dòng)化在未來(lái),有可能下到方法等級(jí)。

原文地址:https://blogs.msdn.microsoft.com/msdntaiwan/2016/09/20/selfcontainednetcoreapplications/


.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺(tái)或掃描二維碼關(guān)注

總結(jié)

以上是生活随笔為你收集整理的自包含 .NET Core应用程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。