asp.net core 系列 1 概述

来源:https://www.cnblogs.com/MrHSR/archive/2019/01/02/10161811.html
-Advertisement-
Play Games

一. 概述 ASP.NET Core 是一個跨平臺的高性能開源框架,可以用來:建置 Web 應用程式和服務、IoT應用和移動後端、在 Windows macOS 和 Linux 上使用喜愛的開發工具、部署到雲或本地、NET Core 或 .NET Framework 上運行。 ASP.NET Cor ...


一.   概述

  ASP.NET Core 是一個跨平臺的高性能開源框架,可以用來:建置 Web 應用程式和服務、IoT應用和移動後端、在 Windows macOS 和 Linux 上使用喜愛的開發工具、部署到雲或本地、NET Core 或 .NET Framework 上運行。

  ASP.NET Core  可以面向 .NET Core 或 .NET Framework。面向 .NET Framework 的 ASP.NET Core 應用無法跨平臺,它們僅在 Windows 上運行。通常,ASP.NET Core由 .NET Standard 庫組成。與 .NET Standard 2.0 相容的 .NET Framework 版本建議使用4.7.1。在未來ASP.NET Core 3.0及以上只能在 .NET Core 中運行。

 

  1.1 ASP.NET Core 具有如下優點:

    (1)生成 Web UI 和 Web API 的統一場景。

    (2)針對可測試性進行構建。

    (3)Razor Pages可以使基於頁面的編碼方式更簡單高效。

    (4)能夠在 Windows、macOS 和 Linux 上進行開發和運行。

    (5)開放源代碼和以社區為中心。

    (6)集成新式客戶端框架和開發工作流。

    (7)基於環境的雲就緒配置系統。

    (8)內置依賴項註入。

    (9)輕型的高性能模塊化 HTTP 請求管道。

    (10)能夠在IIS、Nginx、Apache、Docker 上進行托管或在自己的進程中進行自托管。

    (11)目標到NET Core 時,可以使用並行應用版本控制。

    (12)簡化新式 Web 開發的工具。

 

  1.2 使用 ASP.NET Core MVC 生成 Web API 和 Web UI所需的功能:

    Model-View-Controller (MVC) 模式使 Web API 和 Web 應用可測試。

    Razor Pages是基於頁面的編程模型,它讓 Web UI 的生成更加簡單高效。

    Razor 標記提供了適用於 Razor 頁面和 MVC 視圖的高效語法。

    標記幫助程式使伺服器端代碼可以在 Razor 文件中參與創建和呈現 HTML 元素。

    內置的多數據格式和內容協商支持使 Web API 可訪問多種客戶端,包括瀏覽器和移動設備。

    模型綁定自動將 HTTP 請求中的數據映射到操作方法參數。

    模型驗證自動執行客戶端和伺服器端驗證。

 

  1.3 NET Core與 .NET Framework 比較

    .NET Core與 .NET Framework 相比優勢包括: 跨平臺、提高性能、並行版本控制、新API、開源。目前NET Framework 還不會被 .NET Core 代替。Core會試圖縮小二者在實現上的差距,下表將 ASP.NET Core 與 ASP.NET 4.x 進行比較:

ASP.NET Core ASP.NET 4.x
針對 Windows、macOS 或 Linux 進行生成 針對 Windows 進行生成
Razor 頁面是在 ASP.NET Core 2.x 及更高版本中創建 Web UI 時建議使用的方法 使用 Web 窗體、SignalR、MVC、Web API、WebHooks 或網頁
每個電腦多個版本 每個電腦一個版本
比 ASP.NET 4.x 性能更高 良好的性能
選擇 .NET Framework 或 .NET Core 運行時 使用 .NET Framework 運行時

 

  1.4 運用場景

    (1) 在什麼情況下要求使用 .NET Core包括: 用戶有跨平臺需求、用戶正在面向微服務、用戶正在使用 Docker 容器、需要高性能和可擴展的系統、需按應用程式提供並行的 .NET 版本。

    (2) 在什麼情況下使用.NET Framework包括: 當前使用 .NET Framework(建議擴展而不是遷移)、不可用於 .NET Core 的第三方 .NET 庫或 NuGet 包、不可用於 .NET Core 的 .NET 技術、不支持 .NET Core 的平臺。

     不可用於 .NET Core的.NET技術包括:不能用於 ASP.NET Web 窗體、WCF 服務的實現(將來會考慮在Core上實現)、工作流相關的服務。

 

    


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 查詢在應用程式中很重要,花樣也特別多,不同得業務需求需要不同的查詢條件,還要支持and、or ……事實上也確實如此,程式中有N多個查詢類,並且很可能其中有多個類查詢同一張表,所以特別想弄一個通用的查詢類。 前幾天也是因為討論有關查詢的問題,想到了一個點子覺得可行,最近就抓緊實現了一下來驗證想法的可行 ...
  • 作為後端開發的我來說,前端表示真心玩不轉,你如果讓我微調一個位置的樣式的話還行,但是讓我寫一個很漂亮的後臺的話,真心做不到,所以我一般會選擇套用一些開源UI模板來進行系統UI的設計。那如何套用呢?今天就以我們系列實戰教程中的CMS系統為例來應用第三方的後臺模板LayuiCMS2.0為例來進行實戰演練 ...
  • 索引: 目錄索引 一.API 列表 .ExistAsync() 用於 單表 / 多表連接 查詢 二.API 單表-便捷 方法 舉例 1.單表-便捷, 判斷是否存在方法 生成 SQL 如下, 在返回結果時 ExistAsync API 中會判斷結果是否 >0 ,返回 true or false : 三 ...
  • 一、.net和C#是什麼關係 .net是一個程式運行的平臺,它是c#,vb,F#等程式運行的平臺,為這些語言提供基礎類庫、公共語言運行時(CLR)等相關支持。 C#是支持.net的一種編程語言。.net編程語言有很多種,常用的是C#,還有Visual Basic、C++/CLI、Eiffel、F#、 ...
  • 本筆記中附有Post請求方法,調用WebAPI,反序列化成json格式後,如果json字元串中包含有d,取出d中的對象json字元串的方法。 ...
  • 寫這個純粹是自己的一點學習總結,其實就學習的筆記整理,相當於對自己的一點督促,如有看到不正確的歡迎指出 一般我們寫代碼都是使用的高級語言,但是在CLR中運行的代碼並不是我們直接寫的代碼,而是通過我們選擇對應語言的編輯器生產的中間語言運行,所以一開始會介紹,在CLR運行之前,到底做了什麼? 所有面向C ...
  • 為什麼異常處理選擇中間件? 傳統的ASP.NET可以採用異常過濾器的方式處理異常,在ASP.NET CORE中,是以多個中間件連接而成的管道形式處理請求的,不過常用的五大過濾器得以保留,同樣可以採用異常過濾器處理異常,但是異常過濾器不能處理MVC中間件以外的異常,為了全局統一考慮,採用中間件處理異常 ...
  • private void gridView1_RowCellStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e) { //偶數行奇數列||奇數行偶數列 if ( e.RowHandle != grid ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...