.NET Core MVC 靜態文件應用

来源:https://www.cnblogs.com/gzbit-zxx/archive/2020/02/15/12312420.html
-Advertisement-
Play Games

一、靜態文件應用方面 ASP.NET Core 靜態文件應用,主要分為兩方面:網站訪問和靜態文件整合 二、案例 1、訪問靜態文件 我們都知道,在 ASP.NET 項目中,我們的靜態文件一般要放在 wwwroot(項目預設),比如CSS、JS、HTML、IMG、PNG 等等。 如果在 wwwroot ...


一、靜態文件應用方面

  ASP.NET Core 靜態文件應用,主要分為兩方面:網站訪問靜態文件整合

二、案例

1、訪問靜態文件

  我們都知道,在 ASP.NET 項目中,我們的靜態文件一般要放在 wwwroot(項目預設),比如CSS、JS、HTML、IMG、PNG 等等。 如果在 wwwroot 文件目錄下放一張圖片,啟動程式是不能直接訪問的。我們需要在 Startup.css 啟動程式中,添加一個靜態訪問的中間建 UseStaticFiles() 即可實例如下如所示

 

 

 然後我們就可以在瀏覽器中訪問到我們的靜態文件了。

 

 

 2、修改預設wwwroot目錄 

  在項目中,如果習慣其他原因,我們想不叫 wwwroot ,我們是可以改為其他的名稱。如我們現在就該為public。我們只需要在 Program.cssCreateHostBuilder() 中添加 UseContentRoot("public") 即可。實例如下

 

 

 如果你沒有 public 這個根目錄,你啟動程式就會報錯,因為你已經改了目錄名稱。

 

 

 3、使用包管理器(libman)管理

  libman 主要是為了管理我們的CSS、JS,比如我們的jquery.js、bootstrap框架等等的前端工具。那麼如何添加呢,我們需要在 wwwroot右鍵菜單-》添加-》客戶端

 

 在彈出的 “添加客戶端庫” 中,選擇 unpkg ,輸入前端框架名稱,如 bootstrap 選擇添加所有庫或者選擇特點文件即可,目標位置是可以修改的。但必須放在 wwwroot 目錄下,點擊安裝即可。

 

 安裝後,可能我們需要稍等一下,可能網速慢等原因,下載該框架需要點時間。下載完成後,我們會在項目路徑下,生成一個 libman.json 文件

 

 這就是我們使用 libman 下載的前端框架,如果我們的 boostrap 框架刪除了,我們只需在 libman.json 上右鍵還原客戶端即可。

 

 4、對 JS 和 CSS 捆綁和壓縮

  在網頁設計中,如何我們需要引用很多的 JS 和 CSS 我們感覺代碼非常的多,我們可以使用捆綁的形式,將多個 CSS 和 JS 捆綁在一起,方便使用,那麼我們需要使用 NuGet 安裝一個工具 “BuildBundlerMinifier”我們如果安裝呢?那麼需要在項目上右鍵-》管理 NuGet 程式包

 

 在瀏覽中,搜索BuildBundlerMinifier 安裝即可

 

 安裝完成後,我們在項目路徑下,新建一個json文件 bundleconfig.json 的文件,實例如下

 

我們需要在裡面寫需要壓縮的為一個的文件,示例如下

  {
    "outputFileName": "wwwroot/css/web.min.css",
    "inputFiles": [
      "wwwroot/web.css",
      "wwwroot/index.css"
    ]
  }
]

 

 

 編譯項目就會在 wwwroot/css目錄下麵生成一個web.min.css

 

 如果不想要壓縮的css,我們可以修改一個配置,如下所示

[
  {
    "outputFileName": "wwwroot/css/web.min.css",
    "inputFiles": [
      "wwwroot/web.css",
      "wwwroot/index.css"
    ],
    "minify": {
      "enabled": false
    }

  }
]

 

 

 如果我們想壓縮 js 也同理。

[
  {
    "outputFileName": "wwwroot/css/web.min.css",
    "inputFiles": [
      "wwwroot/web.css",
      "wwwroot/index.css"
    ],
    "minify": {
      "enabled": false
    }
  },
  {
    "outputFileName": "wwwroot/js/web.min.js",
    "inputFiles": [
      "wwwroot/web.js",
      "wwwroot/index.js"
    ],
    "minify": {
      "enabled": false
    }
  }
]

三、總結

  學得不深入,有不對的地方,歡迎提提意見,謝謝!!!


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

-Advertisement-
Play Games
更多相關文章
  • 慕課網-悟空-玩轉Java併發工具,精通JUC,成為併發多面手-筆記 微雲:https://share.weiyun.com/81aa12bb98016e200add31fb8e191cdf百度網盤:鏈接:https://pan.baidu.com/s/1IiClTkQwFJgBL2NqlptKbA ...
  • 一、前言 從學單片機開始鼓搗C語言,到現在為了學CV鼓搗Python,期間在CSDN、簡書、博客園和github這些地方得到了很多幫助,所以也想把自己做的一些小東西分享給大家,希望能幫助到別人。記錄人生的第一篇博客,mark。 二、圖像檢測步驟 1. 讀取兩張圖片 第一張是需要檢測的小物體,第二章圖 ...
  • 多態的體現 父類的引用指向了自己的子類對象。 父類的引用也可以接受自己的子類對象。 代碼體現 運行結果 多態的前提 必須是類與類之間有關係。要麼是繼承關係,要麼實現。 存在覆寫關係。 多態利弊 利處 多態的出現大大地提高了程式的拓展性。 弊端 提高了拓展性,但是只能使用父類的引用訪問父類中的成員,不 ...
  • 今天給大家翻譯一篇由ASP.NET首席開發工程師 "James Newton King" 前幾天發表的一篇博客,文中帶來了一個實驗性的產品gRPC Web。大家可以點擊文末的討論帖進行相關反饋。我會在文章末尾給出原文鏈接。全部譯文如下: 我很高興宣佈通過.NET對gRPC Web進行實驗性支持。gR ...
  • .NET Core WebAPI post參數傳遞時後端的接收方式 1. 實體類 2. dynamic動態類型 3. JObject參數 4. 單值參數(字元串參數) A.前端Post請求代碼 B.後端接收參數方式 1. 實體類 實體類是比較簡單的一種傳參方式,使用頻率非常高。 1. 添加實體類 2 ...
  • 通過使用變換(transform),許多繪圖任務將更趨簡單;變換是通過不加通告地切換形狀或元素使用的坐標系統來改變形狀或元素繪製方式的對象。在WPF中,變換由繼承自System.Windows.Media.Transform抽象類的類表示。下表列出了這些類。 表 變換類 從技術角度看,所有變換都使用 ...
  • 概述 上兩篇(asp.net core 3.x 身份驗證-1涉及到的概念、asp.net core 3.x 身份驗證-2啟動階段的配置)介紹了身份驗證相關概念以及啟動階段的配置,本篇以cookie身份驗證為例來大致說明asp.net core中的身份驗證原理。如果我們的應用只考慮瀏覽器使用,且不考慮 ...
  • DbTool 是一個支持 CodeFirst/DbFirst/ModelFirst 的資料庫小工具,原本是基於 dotnet framework WinForm 實現的,在 1.1.0 版本更新中使用 dotnet core 3.1 基於 WPF 重寫了,並實現了一個簡單的基於插件模式開發模式並引入... ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...