国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Asp.net Core系列學(xué)習(xí)(1)

這篇具有很好參考價值的文章主要介紹了Asp.net Core系列學(xué)習(xí)(1)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

Asp.net Core 6系列學(xué)習(xí)



Asp.net Core 概述

ASP.NET Core 是一個跨平臺的高性能開源框架,用于生成啟用云且連接 Internet 的新式應(yīng)用。
使用 ASP.NET Core,可以:

  • 生成 Web 應(yīng)用和服務(wù)、物聯(lián)網(wǎng) (IoT) 應(yīng)用和移動后端。
  • 在 Windows、macOS 和 Linux 上使用喜愛的開發(fā)工具。
  • 部署到云或本地。
  • 在 .NET Core 上運(yùn)行。

ASP.NET Core 是對 ASP.NET 4.x 的重新設(shè)計,其中包括體系結(jié)構(gòu)上的更改,產(chǎn)生了更精簡、更模塊化的框架。


一、在 ASP.NET 4.x 和 ASP.NET Core 之間進(jìn)行選擇

ASP.NET Core 是一個跨平臺的開源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 應(yīng)用。

ASP.NET 4.x 是一個成熟的框架,提供在 Windows 上生成基于服務(wù)器的企業(yè)級 Web 應(yīng)用所需的服務(wù)。

ASP.NET Core ASP.NET 4.x
針對 Windows、macOS 或 Linux 進(jìn)行生成 針對 Windows 進(jìn)行生成
Razor Pages 是在 ASP.NET Core 2.x 及更高版本中創(chuàng)建 Web UI 時建議使用的方法。 另請參閱 MVC、Web API 和 SignalR。 使用 Web FormsSignalR、MVCWeb APIWebHooks 或網(wǎng)頁
每個計算機(jī)多個版本 每個計算機(jī)一個版本
使用 C# 或 F# 通過 Visual Studio、Visual Studio for Mac 或 Visual Studio Code 進(jìn)行開發(fā) 使用 C#、VB 或 F# 通過 Visual Studio 進(jìn)行開發(fā)
比 ASP.NET 4.x 性能更高 良好的性能
使用 .NET Core 運(yùn)行時 使用 .NET Framework 運(yùn)行時

二、適用于服務(wù)器應(yīng)用的 .NET 與 .NET Framework

有兩種支持的 .NET 實(shí)現(xiàn)可用于生成服務(wù)器端應(yīng)用。

實(shí)現(xiàn) 包含的版本
.NET .NET Core 1.0 - 3.1、.NET 5 及更高版本的 .NET。
.NET Framework .NET Framework 1.0 - 4.8

這兩者共用許多相同的組件,你可在它們之間共享代碼。 但兩者之間存在根本的差異,可根據(jù)需要實(shí)現(xiàn)的目標(biāo)進(jìn)行選擇。 本文介紹了在何種情況下進(jìn)行選擇。

在以下情況,對服務(wù)器應(yīng)用程序使用 .NET:

  • 用戶有跨平臺需求。
  • 你正在以微服務(wù)為目標(biāo)。
  • 你正在使用 Docker 容器。
  • 需要高性能和可擴(kuò)展的系統(tǒng)。
  • 需按應(yīng)用程序提供并行的 .NET 版本。

在以下情況,對服務(wù)器應(yīng)用程序使用 .NET Framework :

  • 應(yīng)用當(dāng)前使用 .NET Framework(建議擴(kuò)展而不是遷移)。
  • 應(yīng)用使用不可用于 .NET 的第三方庫或 NuGet 包。
  • 應(yīng)用使用不可用于 .NET 的 .NET Framework 技術(shù)。
  • 應(yīng)用使用不支持 .NET 的平臺。

三、ASP.NET Core Web UI

1.服務(wù)器和客戶端呈現(xiàn) UI 的優(yōu)勢和成本

有三種常見的方法可以使用 ASP.NET Core 構(gòu)建新式 Web UI:

  • 從服務(wù)器呈現(xiàn) UI 的應(yīng)用。
  • 在瀏覽器的客戶端上呈現(xiàn) UI 的應(yīng)用。
  • 利用服務(wù)器和客戶端 UI 呈現(xiàn)方法的混合應(yīng)用。 例如,大多數(shù) Web UI 呈現(xiàn)在服務(wù)器上,并會根據(jù)需要來添加客戶端呈現(xiàn)的組件。

在服務(wù)器或客戶端上呈現(xiàn) UI 時,需要考慮其優(yōu)點(diǎn)和缺點(diǎn)。

2.服務(wù)器呈現(xiàn)的 UI

優(yōu)點(diǎn):

  • 客戶端的需求最少,因?yàn)槭怯煞?wù)器執(zhí)行邏輯和頁面生成工作:
    • 非常適用于低端設(shè)備低帶寬連接。
    • 允許在客戶端上使用各種瀏覽器版本。
    • 快速加載初始頁面。
    • 盡可能少地使用或不使用 JavaScript 拉到客戶端
  • 靈活地訪問受保護(hù)的服務(wù)器資源:
    • 數(shù)據(jù)庫訪問。
    • 訪問機(jī)密,如對 Azure 存儲的 API 調(diào)用值。
  • 靜態(tài)站點(diǎn)分析優(yōu)點(diǎn),例如搜索引擎優(yōu)化。

常見的服務(wù)器呈現(xiàn)的 Web UI 應(yīng)用場景的示例:

  • 動態(tài)站點(diǎn),例如提供個性化頁面、數(shù)據(jù)和窗體的站點(diǎn)。
  • 顯示只讀數(shù)據(jù),如事務(wù)列表。
  • 顯示靜態(tài)博客頁面。
  • 面向公眾的內(nèi)容管理系統(tǒng)。

缺點(diǎn):

  • 計算和內(nèi)存使用的成本都集中在服務(wù)器上,而不是分?jǐn)偟矫總€客戶端。
  • 用戶交互需要往返服務(wù)器才能生成 UI 更新

四、可用的 ASP.NET Core Web UI 服務(wù)器呈現(xiàn)的模型

Razor Pages 和 MVC 是基于服務(wù)器的框架,用于通過 .Net 生成 Web 應(yīng)用。

1.ASP.NET Core Razor Pages

Razor Pages 是一個基于頁面的模型。 UI 和業(yè)務(wù)邏輯關(guān)注點(diǎn)保持分離狀態(tài),但都在頁面內(nèi)。

Razor Pages 創(chuàng)建新的基于頁面或基于窗體的應(yīng)用。

Razor Pages 入門比 ASP.NET Core MVC 要簡單一些。

在服務(wù)器呈現(xiàn)的優(yōu)點(diǎn)基礎(chǔ)上,Razor Pages 的優(yōu)點(diǎn):

  • 快速構(gòu)建和更新 UI。 頁面的代碼與頁面一起保存,同時保持 UI 和業(yè)務(wù)邏輯關(guān)注點(diǎn)相互分離。
  • 可進(jìn)行測試并縮放到大型應(yīng)用。
  • 組織 ASP.NET Core 頁面,使用起來比 ASP.NET MVC 更簡單:
    • 視圖的具體邏輯和視圖模型可以一起保存在它們自己的命名空間和目錄中。
    • 相關(guān)頁面的組可以保存在各自的命名空間和目錄中。

2.ASP.NET Core MVC

ASP.NET MVC 在服務(wù)器上呈現(xiàn) UI,并使用模型-視圖-控制器 (MVC) 結(jié)構(gòu)模式。

MVC 模式將應(yīng)用分成三組主要組件:模型、視圖和控制器。

用戶請求被路由到控制器。 控制器負(fù)責(zé)使用模型來執(zhí)行用戶操作或檢索查詢結(jié)果。 控制器選擇要顯示給用戶的視圖,并為其提供所需的任何模型數(shù)據(jù)。

對 Razor Pages 的支持是建立在 ASP.NET Core MVC 基礎(chǔ)之上的。

在服務(wù)器呈現(xiàn)的優(yōu)點(diǎn)基礎(chǔ)上,MVC 也有它的優(yōu)點(diǎn):

  • 基于可縮放且成熟的模型生成大型 Web 應(yīng)用。
  • 明確分離關(guān)注點(diǎn)以獲得最大的靈活性。
  • 模型-視圖-控制器的責(zé)任分離,確保了業(yè)務(wù)模型的發(fā)展,而不會與底層的實(shí)現(xiàn)細(xì)節(jié)緊密相連。

3.Blazor Server

Blazor 是一個使用 Blazor 生成交互式客戶端 Web UI 的框架:

  • 使用 C# 代替 JavaScript 來創(chuàng)建信息豐富的交互式 UI。
  • 共享使用 .NET 編寫的服務(wù)器端和客戶端應(yīng)用邏輯。
  • 將 UI 呈現(xiàn)為 HTML 和 CSS,以支持眾多瀏覽器,其中包括移動瀏覽器。
  • 與新式托管平臺(如 Docker)集成。
  • 使用 .NET 和 Blazor 生成混合桌面和移動應(yīng)用。

使用 .NET 進(jìn)行客戶端 Web 開發(fā)可提供以下優(yōu)勢:

  • 使用 C# 代替 JavaScript 來編寫代碼。
  • 利用現(xiàn)有的 .NET 庫生態(tài)系統(tǒng)。
  • 在服務(wù)器和客戶端之間共享應(yīng)用邏輯。
  • 受益于 .NET 的性能、可靠性和安全性。
  • 使用開發(fā)環(huán)境(例如 Visual Studio 或 Visual Studio Code)保持 Windows、Linux 或 macOS 上的工作效率。
  • 以一組穩(wěn)定、功能豐富且易用的通用語言、框架和工具為基礎(chǔ)來進(jìn)行生成。

Blazor Server 支持在 ASP.NET Core 應(yīng)用中托管服務(wù)器呈現(xiàn)的 UI。 可通過 SignalR 連接處理客戶端 UI 更新。 運(yùn)行時保留在服務(wù)器上,并處理應(yīng)用 C# 代碼的執(zhí)行。

4.Blazor WebAssembly

Blazor WebAssembly 是單頁應(yīng)用 (SPA) 框架,用于生成具有本文前面 Blazor Server 部分所述的一般特征的交互式客戶端 Web 應(yīng)用。

通過 WebAssembly,可在 Web 瀏覽器內(nèi)運(yùn)行 .NET 代碼。 WebAssembly 是針對快速下載和最大執(zhí)行速度優(yōu)化的壓縮字節(jié)碼格式。 WebAssembly 是開放的 Web 標(biāo)準(zhǔn),支持用于無插件的 Web 瀏覽器。 Blazor WebAssembly 適用于所有新式 Web 瀏覽器,包括移動瀏覽器。

當(dāng) Blazor WebAssembly 應(yīng)用生成并運(yùn)行時:

  • C# 代碼文件和 Razor 文件將被編譯為 .NET 程序集。
  • 該程序集和 .NET 運(yùn)行時將被下載到瀏覽器。
  • Blazor WebAssembly 啟動 .NET 運(yùn)行時,并配置運(yùn)行時,以為應(yīng)用加載程序集。 Blazor WebAssembly 運(yùn)行時使用JavaScript 互操作處理文檔對象模型 (DOM) 操作和瀏覽器 API 調(diào)用。

5.使用 JavaScript 框架(例如 Angular 和 React)的 ASP.NET Core 單頁應(yīng)用程序 (SPA)

使用熱門的 JavaScript 框架(如 Angular 或 React)生成適用于 ASP.NET Core 應(yīng)用的客戶端邏輯。 ASP.NET Core 為 Angular 和 React 提供了項(xiàng)目模板,也可以用于其他 JavaScript 框架。

在前面列出的客戶端呈現(xiàn)的優(yōu)點(diǎn)基礎(chǔ)上,將 ASP.NET Core SPA 與 JavaScript 框架結(jié)合使用也有一些優(yōu)點(diǎn):

  • JavaScript 運(yùn)行時環(huán)境已隨瀏覽器提供。
  • 大型社區(qū)和成熟的生態(tài)系統(tǒng)。
  • 使用熱門的 JS 框架(如 Angular 和 React)構(gòu)建適用于 ASP.NET Core 應(yīng)用的客戶端邏輯。

缺點(diǎn):

  • 需要更多編碼語言、框架和工具。
  • 難以共享代碼,因此一些邏輯可能會重復(fù)。

總結(jié)

MVC、Razor Pages 和 Blazor 都是 ASP.NET Core 框架的一部分,設(shè)計為可以結(jié)合使用。 Razor 組件可以通過托管的 Blazor WebAssembly 或 Blazor Server 解決方案集成到 Razor Pages 和 MVC 應(yīng)用。 呈現(xiàn)視圖或頁面時,可以同時預(yù)呈現(xiàn)組件。文章來源地址http://www.zghlxwxcb.cn/news/detail-462226.html

到了這里,關(guān)于Asp.net Core系列學(xué)習(xí)(1)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ASP.NET Core SignalR 系列(二)- 中心(服務(wù)端)

    ASP.NET Core SignalR 系列(二)- 中心(服務(wù)端)

    本章將和大家分享 ASP.NET Core SignalR 中的中心(服務(wù)端)。 本文大部分內(nèi)容摘自微軟官網(wǎng):https://learn.microsoft.com/zh-cn/aspnet/core/signalr/hubs?view=aspnetcore-7.0 廢話不多說,我們直接來看一個Demo,Demo的目錄結(jié)構(gòu)如下所示: 本Demo的Web項(xiàng)目為ASP.NET Core Web 應(yīng)用程序( 目標(biāo)框架為.NET 7.0

    2024年02月13日
    瀏覽(95)
  • ASP.NET Core SignalR 系列(四)- 中心篩選器

    本章將和大家分享 ASP.NET Core SignalR 中的中心篩選器。 本文大部分內(nèi)容摘自微軟官網(wǎng):https://learn.microsoft.com/zh-cn/aspnet/core/signalr/hub-filters?view=aspnetcore-7.0 廢話不多說,下面我們直接進(jìn)入本章主題。 中心篩選器: 在 ASP.NET Core 5.0 或更高版本中可用。 允許在客戶端調(diào)用中心方法之

    2024年02月16日
    瀏覽(101)
  • 你所不知道的ASP.NET Core進(jìn)階系列(三)

    你所不知道的ASP.NET Core進(jìn)階系列(三)

    一年多沒更新博客,上一次寫此系列還是四年前,雖遲但到,沒有承諾,主打隨性,所以不存在斷更,催更,哈哈,上一篇我們細(xì)究從請求到綁定詳細(xì)原理,本篇則是探討模型綁定細(xì)節(jié),當(dāng)一個問題產(chǎn)生到最終解決時,回過頭我們整體分析其產(chǎn)生背景以及設(shè)計思路才能有所獲

    2024年02月05日
    瀏覽(436)
  • ASP.NET Core SignalR 系列(三)- JavaScript 客戶端

    ASP.NET Core SignalR 系列(三)- JavaScript 客戶端

    本章將和大家分享 ASP.NET Core SignalR 中的 JavaScript 客戶端。ASP.NET Core SignalR JavaScript 客戶端庫使開發(fā)人員能夠調(diào)用服務(wù)器端SignalR中心代碼。 本文大部分內(nèi)容摘自微軟官網(wǎng):https://learn.microsoft.com/zh-cn/aspnet/core/signalr/javascript-client?view=aspnetcore-7.0tabs=visual-studio 廢話不多說,下面我們

    2024年02月15日
    瀏覽(99)
  • ASP.NET Core學(xué)習(xí)路線圖

    ASP.NET Core學(xué)習(xí)路線圖

    - [C#](https://www.pluralsight.com/paths/csharp) - [Entity Framework](https://www.pluralsight.com/search?q=entity%20framework%20core) - [ASP.NET Core](https://www.pluralsight.com/search?q=asp.net%20core) - SQL基礎(chǔ)知識 - 學(xué)習(xí)GIT, 在GitHub中創(chuàng)建開源項(xiàng)目 - 掌握HTTP(S)協(xié)議, 及其請求方法(GET, POST, PUT, PATCH, DELETE, OPTIONS) - 不要害怕

    2024年02月14日
    瀏覽(24)
  • Asp .Net Core 系列:基于 Swashbuckle.AspNetCore 包 集成 Swagger

    Asp .Net Core 系列:基于 Swashbuckle.AspNetCore 包 集成 Swagger

    Swagger 是一個規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化 RESTful 風(fēng)格的 Web 服務(wù)。它提供了一種規(guī)范的方式來定義、構(gòu)建和文檔化 RESTful Web 服務(wù),使客戶端能夠發(fā)現(xiàn)和理解各種服務(wù)的功能。Swagger 的目標(biāo)是使部署管理和使用功能強(qiáng)大的 API 從未如此簡單。 Swagger 提供了

    2024年01月18日
    瀏覽(26)
  • Asp .Net Core 系列: 集成 Consul 實(shí)現(xiàn) 服務(wù)注冊與健康檢查

    Asp .Net Core 系列: 集成 Consul 實(shí)現(xiàn) 服務(wù)注冊與健康檢查

    官網(wǎng):https://www.consul.io/ Consul 是一款開源的服務(wù)發(fā)現(xiàn)和配置管理工具,它能夠監(jiān)控應(yīng)用程序和服務(wù)之間的通信,并提供了一組 API 和 Web UI,用于管理服務(wù)和配置。 Consul 是分布式的、高可用的、可橫向擴(kuò)展的,具備以下特性: 服務(wù)發(fā)現(xiàn):Consul 通過 DNS 或者 HTTP 接口使服務(wù)注冊

    2024年01月21日
    瀏覽(21)
  • ASP.NET Core 3.1系列(13)——本地緩存MemoryCache的使用

    ASP.NET Core 3.1系列(13)——本地緩存MemoryCache的使用

    在實(shí)際開發(fā)過程中,緩存( Cache )是一項(xiàng)重要技術(shù)。有時候?yàn)榱司徑鈹?shù)據(jù)庫訪問的壓力,我們可以將一些需要經(jīng)常讀取但又幾乎不會變化的數(shù)據(jù)存在緩存里,以此加快數(shù)據(jù)的訪問速度。在 ASP.NET Core 中,緩存一般分為本地緩存和分布式緩存。相較于分布式緩存( Redis ),本地

    2024年02月05日
    瀏覽(23)
  • ASP.NET Core 3.1系列(4)——讀寫配置文件appsettings.json

    ASP.NET Core 3.1系列(4)——讀寫配置文件appsettings.json

    在大多數(shù)的應(yīng)用程序中,一些參數(shù)需要寫在配置文件里,以此增加系統(tǒng)的靈活性。在 ASP.NET 時代,配置參數(shù)一般會寫在 web.config 文件中,其本質(zhì)上是對 XML 文件的讀取和寫入。而在 ASP.NET Core 中,配置文件變成了 appsettings.json 文件。相較于 XML , JSON 文件更加輕量且靈活,下面

    2024年02月06日
    瀏覽(26)
  • ASP.NET Core 3.1系列(15)——EFCore之DB First

    ASP.NET Core 3.1系列(15)——EFCore之DB First

    本文開始介紹一些關(guān)于 Entity Framework Core 的內(nèi)容。在 EFCore 中,常用的為 DB First 模式和 Code First 模式,下面就來介紹一下如何在 EFCore 中使用 DB First 模式生成實(shí)體類和數(shù)據(jù)庫上下文。 在 SQL Server 中新建一個數(shù)據(jù)庫 Dao ,執(zhí)行如下語句,創(chuàng)建 Country 和 Province 數(shù)據(jù)表。 運(yùn)行結(jié)果如

    2024年02月15日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包