安装MasaFramework模板

执行以下命令安装最新Masa的模板

dotnet new --install Masa.Template

安装完成将出现四个模板

Masa Blazor App

Masa Blazor App的模板创建的是一个没有携带解决方案的项目模板,默认项目结构如图:

一个简单的Masa Blazor Server项目

Masa Blazor Pro Web

Masa Blazor Pro Web的模板创建类型有多种

Wasm就是单纯的Wasm模式

Wasm-Host就是启动一个Server托管Wasm

Wasm-PWA支持浏览器安装

Server就是单纯的Blazor Server模式

ServerAndWasm是提供一个razor类库作为界面,支持Blazor ServerBlazor Wasm俩种模式

对于上面五种模式更推荐第五种模式,这样就可以在部署的时候部署Blazor ServerBlazor Wasm俩种模式,可让用户自行切换,解剖以下Masa Blazor Pro Web的项目结构

MasaWebPro1项目就是Razor类库,提供界面逻辑和实际业务

MasaWebPro1.Server项目就只是以Blazor Server模式托管MasaWebPro1项目的界面

MasaWebPro1.WebAssembly项目就只是以Blazor WebAssembly模式托管MasaWebPro1项目的界面

运行项目将得到一个精美的项目模板

可对其修改进行二次开发,也可以将Pro和MasaFramework结合一块使用

Masa Blazor Website

Masa Blazor Website项目结构

Masa Blazor Website算是老版本的文档站点的模板,简单描述一下,默认使用了全球化

Masa Framework Project

Masa Framework Project就是我们的主角了

需要使用MasaFramework的同志们就需要创建这个模板了,之前的模板都是单纯的Blazor

当我们创建MasaFramework的时候存在多个选项

Use Controllers:使用控制器启用以后不使用MiniApis(更推荐使用MiniApis)

Enable OpenAPI Support: 其实是否默认使用Swagger

Add Dapr Support :添加Dapr的支持

Use Dapr Actor :使用Dapr Actor

Add Authorization An Authentication:添加授权和认证

Add Fluent Validation Middleware:添加校验中间件

分别讲解一下Choice Add Service Project and ModeBasicCqrsDddCqrs&Ddd四个项目模板,Choice Add Web Project其实就是Blazor的托管模式

Basic

一个最基本的MasaFramework的项目结构

Cqrs

MasaFramework的Cqrs结构,对比基本的MasaFramework项目来说有些差异的

Ddd

MasaFrameworkDdd项目和基本模板的差异也很明显

Cqrs&Ddd

Cqrs&Ddd集成了CqrsDdd俩个项目模板的特性,是一个稍微复杂的框架

项目使用

如果你想使用MasaFramework的话,可以将Masa Pro的模板和MasaFramework的模板结合起来一块使用

这个是我目前使用到MasaFramework的项目,Web是将Pro的模板嵌入进来,并进行修改,当前项目还在完善,这也是我第一个接触MasaFramework实践的项目,因为符合我需要的,体积小,依赖少。

结尾

来着token的分享

技术交流群:737776595

MasaFramework学习地址:[MASA Framework](https://docs.masastack.com/framework/getting-started/overview)

MasaFramework入门第二篇,安装MasaFramework了解各个模板的更多相关文章

  1. ElasticSearch入门 第二篇:集群配置

    这是ElasticSearch 2.4 版本系列的第二篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  2. [知了堂学习笔记]_牵线Eclipse和Tomcat第二篇 —— 安装Tomcat&&添加Tomcat到Eclipse

    来了来了~~~~~我们的"织女"--Tomcat来了,牛郎们等急了吧!哈哈! 一.安装Tomcat 下载地址:http://tomcat.apache.org/download-7 ...

  3. JavaMail入门第二篇 创建邮件

    JavaMail API使用javax.mail.Message类来表示一封邮件,Message类是一个抽象类,所以我们需要使用其子类javax.mail.internet.MimeMessage类来 ...

  4. Android JNI入门第二篇——Java参数类型与本地参数类型对照

    前面一篇通过简单的例子介绍了android中JNI的使用.这一篇从基础上了解一些Java参数类型与本地参数类型区别. 1)        java中的返回值void和JNI中的void是完全对应的哦! ...

  5. memcached 第二篇----安装使用

    摘要:set add replace get delete gets cas stats 和 flush_all 命令 获取所有key  .你可以使用MemCachedClient的statsItem ...

  6. Html/Css(新手入门第二篇)

    一.在实际工作中,都是一个团队在做项目,不是一个人在工作.多人协作,就是每个团队都有自己 的命名习惯.1.css选择符命名,规范.2.都有命名规范文档. 二.css选择符作用:指定css样式所作用对象 ...

  7. Windows下FFmpeg快速入门 <第二篇>

    FFmpeg简介 FFmpeg是什么? FFmpeg是用于录制.转换和流化音频和视频的完整解决方案, 包括 libavcodec ,一套领先的音/视频编解码类库.FFmpeg 在Linux上开发,当可 ...

  8. Hadoop入门第二篇-MapReduce学习

    mapreduce是一种计算模型,是google的一篇论文向全世界介绍了MapReduce.MapReduce其实可以可以用多种语言编写Map或Reduce程序,因为hadoop是java写的,所以通 ...

  9. MySQL学习【第二篇安装】

    一.Mysql安装方式 1.安装方式 1.rpm,yum安装 安装方便,安装速度快,但无法定制 2.二进制安装 不需要安装,解压即用,不能定制功能 3.编译安装 可定制,安装很慢,安装分为四个步骤 1 ...

  10. zookeeper学习记录第二篇-----安装、配置、启动

    搭建zk集群,起码保证3台虚拟机的配置,本人使用的虚拟机环境为wm14+centos7+jdk1.8 下载地址 zk的tar包下载地址:http://mirror.bit.edu.cn/apache/ ...

随机推荐

  1. spring boot权限设计资源

    源代码 https://github.com/2237995998/education 博客说明 https://blog.csdn.net/weixin_45138601/article/detai ...

  2. dota中的哲理

    战术和战略: 6k分和3k分玩家的最重要的区别不是英雄玩的不好,而是整体战略不明确. dota玩家游戏时长超过1000h的比比皆是,这些玩家里面分数差距相当大.高的7k往上,低的2k深坑爬不出来. 这 ...

  3. vue后台管理系统——用户管理模块

    电商后台管理系统的功能--用户管理模块 1. 用户管理概述 通过后台管理用户的账号信息,具体包括用户信息的展示.添加.修改.删除.角色分配.账号启用/注销等功能. 用户信息列表展示 添加用户 修改用户 ...

  4. 解决vs未能找到导入的项目

    本文解决的问题: VS显示"vs未找到导入XXX.vcxproj 项目,请确认 import 声明中的路径正确". 找到 修改成非只读,打开后删除所有诸如这样的 Import 标签 ...

  5. Zabbix 监控服务介绍

    Zabbix 监控服务介绍 目录 Zabbix 监控服务介绍 一.Zabbix 监控服务介绍 1.1.1 Zabbix 监控服务介绍 1.1.2 如何去做监控 1.13 硬件监控 1.1.4 系统监控 ...

  6. js之对象处理

    数据拼接一: 原始数据为对象 { 0grade: "" 0home: "萍钢四切(边部钩痕)" 0price: "3200" 0produc ...

  7. C# byte[]与string的相互转换

    byte[]转string: string str = System.Text.Encoding.Default.GetString( byteArray ); string转byte[]: byte ...

  8. 2.5基本算法之搜索 156:LETTERS

    #include<iostream>#include<cstdio>using namespace std;char a[21][21];bool b[26]; int X[4 ...

  9. aop的一些方注释介绍

    //定义切入点 @Pointcut("execution(void com.itheima.dao.BookDao.update())") private void pt2(){} ...

  10. 【Docker】Postgres 安装

    1.docker pull postgres 2.docker run --name postgres -v /home/postgre/data:/var/lib/postgresql/data - ...