ABP框架 嵌入資源

2022-01-11 08:20:09 字數 2468 閱讀 8880

文件目錄

本節內容:

新增到嵌入式資源管理器

使用嵌入式檢視

使用嵌入式資源

重寫嵌入檔案

簡介

abp提供了乙個易用的方式,在你的web應用裡嵌入razor檢視(.cshtml檔案)和其它資源(css,js,img...檔案).你可以使用這個功能建立包含ui功能的外掛程式/模組.

建立嵌入檔案

首先,我們應當建立乙個檔案並把它標誌為嵌入式資源,任何程式集都可以包含嵌入式資源檔案.步驟依專案型別而變.

xproj/project.json 格式

假設我們有個名為embeddedplugin的專案:

把views資料夾的所有檔案標誌為嵌入式資源,我們可以新增乙個如下配置到project.json:

"

buildoptions":

}

csproj 格式假設我們有個名為embeddedplugin的專案:

我選中index.cshtml檔案,轉到屬性視窗(快捷鍵為f4)並修改它的"建立操作"為"嵌入式資源":

你應當在你的乙個web應用裡,為所有你想做為嵌入式資源的檔案的建立操作.

新增到嵌入式資源管理器

我們一旦把檔案嵌入到程式集裡,我們可以使用啟動配置把它們新增到嵌入式資源管理器,新增如下一行**到你模組的preinitialize方法裡:

configuration.embeddedresources.sources.add(

newembeddedresourceset(

"

/views/

",

assembly.getexecutingassembly(),

"

embeddedplugin.views

"));

讓我們解釋一下引數:

使用嵌入式檢視

對於.cshtml檔案,直接從乙個控制器的action裡返回.embeddedplugin程式集裡的blogcontroller如下所示:

using

abp.aspnetcore.mvc.controllers;

using

microsoft.aspnetcore.mvc;

namespace

embeddedplugin.controllers}}

如你所見,定與通常的controller一樣,如預期地工作.

使用嵌入式資源

為使用嵌入式資源(js,css,img...),我們只要在我們的檢視中如常地使用它們:

@section styles 

@section scripts

我假設主應用包含styles和scripts節.我們也可以如常地使用其它檔案(如img).

asp.net core 配置

//allows to expose embedded files to the web!

忽略檔案

通過,嵌入式資源管理器裡的所有靜態檔案可直接被客戶端使用,不過出於安全或其它意圖,你可以忽略一些副檔名,.cshtml和.config預設情況下被忽略(防止從客戶端直接訪問).你可以在你模組的preinitialize裡新增更多副檔名:

configuration.modules.abpwebcommon().embeddedresources.ignoredfileextensions.add("

exe");

重寫嵌入式檔案嵌入式資源檔案的乙個重要功能是:它們可被更高層的模組重寫,這意味著你可以在你web應用的相同資料夾裡建立乙個與嵌入式檔案同名的檔案(web應用中你的檔案不要求是嵌入式的資源,因為靜態檔案比嵌入式檔案優先順序更高).因此,你可以在應用裡重寫模組的css,js或view檔案,同樣地,如果模組a依賴於模組b,且模組a使用相同路徑定義了乙個嵌入式資源,它就會重寫乙個模組b的嵌入式資源.

注意:對於asp.net core 專案,你應當把重寫檔案作為根目錄的wwwroot資料夾下.

ABP框架 1 1 ABP總體介紹 入門介紹

abp是 asp.net boilerplate project asp.net樣板專案 的簡稱。asp.net boilerplate是乙個用佳實踐和流行技術開發現代web應用程式的新起點,它旨在成為乙個通用的web應用程式基礎 框架和專案模板。asp.net boilerplate 基於ddd的...

abp及實戰框架概述

接觸abp也快一年了,有過大半年的abp專案開發經驗,目前專案中所用的abp框架版本為0.10.3,最新的abp框架已經到了1.4,並且支援了asp.net core。關於abp框架有哪些特性 有什麼好處我這裡就不講了。如果你對abp不太了解請先去 abp官網 了解或者參考我的學習之路裡面的鏈結。在...

ABP框架學習 角色建立

實現乙個類似於abp.zero的專案。在完成專案的過程中學習abp框架知識。我們對專案做功能分析。歸類出下以功能功知識點。1.角色 2.測試專案 3.使用者 4.許可權 5.組織 6.登陸 7.選單 8.日誌 9.錯誤處理 10.併發處理 11.用佇列方式解決高併發請求。角色功能非常的簡單。主要用做...