(1)入门MasaFramework教程 - tokengo
source link: https://www.cnblogs.com/hejiale010426/p/17209926.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
(1)入门MasaFramework教程
首先了解一下MasaFramework
是什么
MasaFramework
是一个基于.Net6.0
的后端框架, 可以被用于开发Web应用程序、WPF项目、控制台项目
其实就是MasaFramework
提供了很多功能的包,很强大,对于Dapr的支持非常好,如果有想尝试Dapr的可以试试MasaFramework
然后我们开始使用MasaFramework
,进入实战
-
安装
MasaFramework
项目模板dotnet new --install Masa.Template
这样就安装成功了
-
打开一个目录,打开控制台进行创建模板项目,创建一个
mfDemo
的项目模板dotnet new masafx --name mfDemo
这样就创建完成了,打开解决方案
- 项目结构解析
我们可以看到打开解决方案以后的项目结构
项目区分src/ApiGateways
,src/Contracts
,src/Services
,src/Web
四层,这个时候可能就会有很多人有疑惑了,为什么跟传统的Abp
架构设计有些差异,其实这个就是MasaFramework
的框架美妙之处。
src/ApiGateways
中包含对外使用的接口实现,相当于我可以直接将src/ApiGateways
给src/Web
的前端项目使用,这样的好处就是减少前端项目的依赖性,并且对于接口的快速对接
src/Contracts
中包含了基本的模型,和一些共享的东西,src/Contracts
是纯粹的,没有任何依赖,所以src/ApiGateways
和src/Services
都会直接依赖src/Contracts
,用于共享Module
或其他东西,
src/Services
中就是包含了具体业务和实现,并且包含Host
在Application
中包含业务处理或事件处理
如果你并未使用MiniApi
的话应该出现的就是Controllers
其实建议使用MiniApi
,因为俩个实现方式不一样,导致MiniApi
在性能上对比Controllers
更好
Infrastructure
中就是项目的基础设施了,看图我们发现Entity
和Middleware
,Repository
,DbContext
都在基础设施中
MasaFramework
的设计就是简化项目复杂,将其柔和在一个项目中,如果你刚刚使用MasaFramework
,千万千万不要拆分,你拆分了和MasaFramework
本身设计就不太相符合,但是如果你是熟练的大佬,当我没说,刚刚入门MasaFramework
请务必使用本身框架的设计
src/Web
就是我们的实际的前端项目了
创建的默认的模板提供是Blazor Server
模式的项目,可以自行拆分成三层项目mfDemo.Shared
mfDemo.Server
,mfDemo.WebAssembly
三层项目架构。
mfDemo.Shared
可以理解成项目的所有实现和界面等一切功能,
mfDemo.Server
其实就是个Blazor Server
的壳,用于托管mfDemo.Shared
项目
mfDemo.WebAssembly
其实也是个Blazor WebAssembly
的壳,用于托管mfDemo.Shared
项目
这样我们的项目就可以支持Blazor Server
和Blazor WebAssembly
两种模式了,
通过上文我们可以基本将MasaFramework
的项目结构了解清楚,也知道MasaFramework
的设计了,
当前是MasaFramework
的第一篇入门,我会继续学习MasaFramework
并且分享给大家
来自token的分享
学习交流:737776595
Recommend
-
3
MasaFramework -- 锁与分布式锁 什么是锁?什么是...
-
3
MasaFramework -- 缓存入门与设计 什么是
-
2
MasaFramework -- 领域驱动设计 什么是
-
3
MasaFramework -- i18n (国际化) 作为一个普通开发...
-
5
Maui Blazor 使用摄像头实现 由于Maui Blazor中界面是由WebView渲染,所以再使用Android的摄像头时无法去获取,因为原生的摄像头需要绑定界面组件 所以我找到了其他的实现方式,通过We...
-
11
如何实现在react现有项目中嵌入Blazor? 目前官方只提供了angular和react俩种示例所以本教程只将react教程 思路讲解: 首先在现有react项目中我们可能某些组件是在Bl...
-
9
目前官方只提供了angular和react俩种示例,所以本教程将来讲解如何在Vue的现有项目中使用,上期已经做好了react的教材! Vue 项目创建流程 ...
-
7
安装MasaFramework模板 执行以下命令安装最新Masa的模板 dotnet new --install Masa.Template 安装完成将出现四个模板
-
4
首先我们需要创建一个MasaFramework模板的项目,项目名称TokenDemo,项目类型如图所示
-
3
在Winform中一分钟入门使用好看性能还好的Blazor Hybrid dotnet new install Masa.Template::1.0.0-rc.2
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK