(1)入门MasaFramework教程

简介: (1)入门MasaFramework教程

(1)入门MasaFramework教程

首先了解一下MasaFramework是什么

MasaFramework是一个基于.Net6.0的后端框架, 可以被用于开发Web应用程序、WPF项目、控制台项目

其实就是MasaFramework提供了很多功能的包,很强大,对于Dapr的支持非常好,如果有想尝试Dapr的可以试试MasaFramework

然后我们开始使用MasaFramework,进入实战

  1. 安装MasaFramework项目模板

    dotnet new --install Masa.Template
    

    这样就安装成功了

  2. 创建项目

    打开一个目录,打开控制台进行创建模板项目,创建一个mfDemo的项目模板

    dotnet new masafx --name mfDemo
    

    这样就创建完成了,打开解决方案

  1. 项目结构解析

我们可以看到打开解决方案以后的项目结构

项目区分src/ApiGatewayssrc/Contractssrc/Servicessrc/Web四层,这个时候可能就会有很多人有疑惑了,为什么跟传统的Abp架构设计有些差异,其实这个就是MasaFramework的框架美妙之处。

src/ApiGateways中包含对外使用的接口实现,相当于我可以直接将src/ApiGatewayssrc/Web的前端项目使用,这样的好处就是减少前端项目的依赖性,并且对于接口的快速对接

src/Contracts中包含了基本的模型,和一些共享的东西,src/Contracts是纯粹的,没有任何依赖,所以src/ApiGatewayssrc/Services都会直接依赖src/Contracts,用于共享Module或其他东西,

src/Services中就是包含了具体业务和实现,并且包含Host

​ 在Application中包含业务处理或事件处理

如果你并未使用MiniApi的话应该出现的就是Controllers

其实建议使用MiniApi,因为俩个实现方式不一样,导致MiniApi在性能上对比Controllers更好

Infrastructure中就是项目的基础设施了,看图我们发现EntityMiddlewareRepositoryDbContext都在基础设施中

MasaFramework的设计就是简化项目复杂,将其柔和在一个项目中,如果你刚刚使用MasaFramework,千万千万不要拆分,你拆分了和MasaFramework本身设计就不太相符合,但是如果你是熟练的大佬,当我没说,刚刚入门MasaFramework请务必使用本身框架的设计

src/Web就是我们的实际的前端项目了

创建的默认的模板提供是Blazor Server模式的项目,可以自行拆分成三层项目mfDemo.Shared mfDemo.ServermfDemo.WebAssembly三层项目架构。

mfDemo.Shared可以理解成项目的所有实现和界面等一切功能,

mfDemo.Server其实就是个Blazor Server的壳,用于托管mfDemo.Shared项目

mfDemo.WebAssembly其实也是个Blazor WebAssembly的壳,用于托管mfDemo.Shared项目

这样我们的项目就可以支持Blazor ServerBlazor WebAssembly两种模式了,

结尾

通过上文我们可以基本将MasaFramework的项目结构了解清楚,也知道MasaFramework的设计了,

当前是MasaFramework的第一篇入门,我会继续学习MasaFramework并且分享给大家

来自token的分享

MASA Framework

学习交流:737776595

目录
相关文章
|
存储 JSON 数据库
vue3中实现文件上传---通过element-plus的upload组件
vue3中实现文件上传---通过element-plus的upload组件
|
前端开发 C# 开发者
WPF开发者必读:MVVM模式实战,轻松构建可维护的应用程序,让你的代码更上一层楼!
【8月更文挑战第31天】在WPF应用程序开发中,MVVM(Model-View-ViewModel)模式通过分离关注点,提高了代码的可维护性和可扩展性。本文详细介绍了MVVM模式的三个核心组件:Model(数据模型)、View(用户界面)和ViewModel(处理数据绑定与逻辑),并通过示例代码展示了如何在WPF项目中实现MVVM模式。通过这种模式,开发者可以更高效地构建桌面应用程序。希望本文能帮助你在WPF开发中更好地应用MVVM模式。
827 1
|
监控 供应链 搜索推荐
获取店铺商品信息的 API 接口有哪些?
本文介绍了五个常用的电商平台获取店铺商品信息的 API 接口:淘宝、京东、1688、拼多多和慢慢买。每个接口的功能、使用方式及优势各不相同,涵盖商品详情、价格、销量、库存等信息,适用于商品分析、竞品分析、价格监控等场景,帮助商家提升业务效率和市场竞争力。
|
前端开发 数据安全/隐私保护 UED
.NET 8 通用权限框架 前后端分离,开箱即用
【8月更文挑战第1天】基于.NET 8 的通用权限框架,采用前后端分离设计,实现真正的开箱即用!无需繁琐配置,一键启动权限管理新体验。利用.NET 8 的高性能与稳定性,结合灵活的前后端开发模式,显著提升开发效率,缩短项目周期。无论大小项目,皆能轻松应对,立即体验高效开发的新篇章!
244 1
|
开发框架 JavaScript 前端开发
分享7个.NET开源、功能强大的快速开发框架
分享7个.NET开源、功能强大的快速开发框架
848 1
|
开发框架 .NET Nacos
使用 Nacos 在 C# (.NET Core) 应用程序中实现高效配置管理和服务发现
使用 Nacos 在 C# (.NET Core) 应用程序中实现高效配置管理和服务发现
1547 0
|
监控 安全 Linux
如何使用Linux命令和工具在Linux系统中根据日期过滤日志文件?
如何使用Linux命令和工具在Linux系统中根据日期过滤日志文件?
816 1
如何使用Linux命令和工具在Linux系统中根据日期过滤日志文件?
|
C# 图形学 开发者
宣布 freeCodeCamp 获得新的基础 C# 认证
欢迎大家来学习 .NET Conf 2023 发布的全新 C# 认证,我们与受人尊敬的 freeCodeCamp 合作,我们的认证不仅仅是一个徽章,而是优质教育的标志。它是全面的、全球可访问的、免费的。
930 3
|
移动开发 前端开发 JavaScript
推荐几个vue3开源二次封装框架【收藏起来以后一定用的到】
推荐几个vue3开源二次封装框架【收藏起来以后一定用的到】
1233 0