真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

[Asp.NetCore]BlazorServerSide的分析-創(chuàng)新互聯(lián)

本篇內(nèi)容介紹了“[Asp.Net Core] Blazor Server Side的分析”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

平順網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)從2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

在2016年, 本人就開始了一個內(nèi)部項目, 其特點就是用C#構(gòu)建DOM樹, 然后把DOM同步到瀏覽器中顯示. 并且在一些小工程中使用.

3年下來, 效果很不錯, 但因為是使用C#來構(gòu)建控件樹, 在沒有特定語法的情況下, 代碼風(fēng)格不是那么好.

典型的風(fēng)格大概是這樣的:

[Asp.Net Core] Blazor Server Side的分析

這個模式挺好的, 有點嫌棄C#代碼占比太高, HTML代碼靠字符串來完成, 在界面的設(shè)計上, 比較吃力.

在2019年秋, Asp.Net 3.0出來了, Blazor Server Side 也正式公布, 可以在VS2019中使用.

當(dāng)時我就去嘗嘗鮮, 發(fā)現(xiàn)這東西, 和我的框架很接近. 不同的是,

Blaozr Server Side 是基于 MVVM 的, 而我的框架是基于傳統(tǒng)控件樹的.

Blazor畢竟有微軟做爸爸, 在VS上的支持是直接的, 由Razor文件來負(fù)責(zé) HTML+C# 的代碼模式, 完全支持智能提示.

天呀, 這不是就是我夢寐以求的開發(fā)方式嗎? 于是, 在疫情期間, 我把以前的框架, 和Blazor直接整合在一起. 開始做一些小工程做驗證.

現(xiàn)在這個整合大部分需求與問題都得到了解決. 還需要提供更多的控件用以提高工程的開發(fā)速度.

先上圖,  看看 Blazor 的代碼是長什么樣子的.

(Razor語法, 和MVC有點接近. 但是MVC是輸出靜態(tài)HTML的, Blazor組件是生成服務(wù)器樹狀結(jié)構(gòu)的)

[Asp.Net Core] Blazor Server Side的分析

與 MVC 的 Razor語法是接近的 , 然而較大不同時 , MVC 的最終目標(biāo)是生成字符串發(fā)給瀏覽器.  而Blazor生成了模型之后, 依然是"活動"的, 隨時準(zhǔn)備好響應(yīng)客戶端的事件.

[Asp.Net Core] Blazor Server Side的分析

對于 Blazor 架構(gòu)的一些特點, 畫了一些圖.

首先, 我把這種模式成為 "服務(wù)器UI映射" , 后面都會陸續(xù)使用這個概念.

個人看法 , 通常的情況, 僅供參考

[Asp.Net Core] Blazor Server Side的分析

[Asp.Net Core] Blazor Server Side的分析

Blazor 因為在服務(wù)器上把代碼運(yùn)行狀態(tài)駐留在內(nèi)存,

所以程序運(yùn)行的上下文得以保存, 而關(guān)聯(lián)的事件也會綁定到上下文中.

事件處理函數(shù)被調(diào)用時, 相關(guān)的對象和數(shù)據(jù)會全部可用.

具體的細(xì)節(jié)無法說太多, 畢竟這是新事物, 我自己也是一邊使用一邊積累心得.

我以后會陸陸續(xù)續(xù)放上各種例子, 提供給感興趣的網(wǎng)友們, 用節(jié)省時間的方式去迅速掌握Blazor的開發(fā)流程.

最后, 放上一個對照表, 以供參考:


服務(wù)器UI映射C/SB/S B+C混合
簡單概述活在服務(wù)器
 投影到客戶端
活在客戶端
 與服務(wù)器通信
服務(wù)器生成HTML
 客戶端展示與回發(fā)
服務(wù)器先生成HTML
 客戶端深化界面功能
典型方案Blazor Server Side
 at server hosted
平臺:Windows/Android/iOS GUI框架
 網(wǎng)頁:JS控件類/React/Argular/Vue..
 Blazor WebAssembly
 Blazor Server Side at client hosted 
各種WEB服務(wù)器方案:
 ASP/ASP.NET WebForms,MVC
 PHP/Java/Node.js/..
各種框架混合使用
典型應(yīng)用無 , 適合: 微信公眾號應(yīng)用,
 網(wǎng)站后臺, 手機(jī)嵌入頁面
 小程序webview嵌入頁面
各種Desktop/Mobile客戶端
 游戲客戶端,網(wǎng)站SPA,微信小程序,
各種入門級展示型網(wǎng)站各種復(fù)雜點的網(wǎng)站
讀寫數(shù)據(jù)直接, 方便需通過服務(wù)器代勞直接, 方便混合
通信方式已在服務(wù)器運(yùn)行HTTP/Socket/WebSocket等等
 由各平臺/框架提供
HTTP GET/POST為主混合
通信代碼無需額外編寫(優(yōu)點)基于XML/JSON/Query/Form/自定格式
 程序員指定具體的名稱與值
 服務(wù)器與客戶端都要編寫大量代碼(缺點)
 關(guān)乎權(quán)限的話要保證安全性,工作量會很大
主要是Query/Form
 程序員指定具體的名稱與值
 只適合簡單的程序
混合
服務(wù)重啟
 熱更新
丟失未保存的狀態(tài)(缺點)
 對正使用的用戶造成影響
未保存狀態(tài)在客戶端保存
 只要重試便可
狀態(tài)在瀏覽器保存
 只要重試便可
狀態(tài)在瀏覽器保存
 只要重試便可
服務(wù)器負(fù)荷最重,(缺點)
 每在線用戶會占用服務(wù)器內(nèi)存
 只適合少量在線用戶場合
最少(優(yōu)點)
 服務(wù)器基本上只處理業(yè)務(wù)邏輯
 每個請求會很快釋放,負(fù)擔(dān)很小
不多較少
適合場景資金少的企業(yè)定制應(yīng)用
 用戶量較少的小功能
 以快速開發(fā)為目標(biāo)
通用開發(fā)模式
 適合絕大部分情況
比較適合內(nèi)容展示網(wǎng)站
 或比較簡單的業(yè)務(wù)系統(tǒng)
混合
代碼部署純服務(wù)器,更保密客戶端,沒那么保密(缺點)
 通信機(jī)制可能會被濫用攻擊
服務(wù)器為主,較為保密混合情況
首次啟動極快 100KB下載量起慢,看框架和程序整體大小極快, 看內(nèi)容多少混合
版本更新直接覆蓋客戶端需下載或重新載入直接覆蓋混合情況
搜索引擎可被收錄
被惡意
 收集數(shù)據(jù)
目前較安全通過通信協(xié)議收集通過爬蟲收集混合

“[Asp.Net Core] Blazor Server Side的分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!


分享標(biāo)題:[Asp.NetCore]BlazorServerSide的分析-創(chuàng)新互聯(lián)
鏈接分享:http://weahome.cn/article/deecjc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部