1、为Study.Trade.Blazor.Server.Host引入两个包

成功后效果如下:

2、修改Study.Trade.Blazor.Server.Host的Pages目录下的_Host.cshtml文件

没有修改前是这样:

修改后是这样:

3、修改Program.cs

官网说了,net 5就修改StartUp.cs,net 6以上就修改Program.cs。我们都net 7了,自然是修改Program.cs

没有修改前(我们将在红框的两行代码中间增加内容)

修改后:

4、修改Web的承载方式,不使用IIS Express。

5、启动吧

点“高级”,再选择“接受风险并继续”

6、浏览器显示了新的错误

修复这个错误,就是需要运行abp install-libs这个命令

7、为Study.Trade.Blazor.Server.Host运行abp install-libs

在Study.Trade.Blazor.Server.Host项目上点右键,选择“在终端中打开”

执行命令abp install-libs

耐心等待:

执行成功啦:

8、再次启动

成功啦!

但是只是项目在引入了BootstrapBlazor组件后,“依然能正常运行”而已,我们并没有使用任何BootstrapBlazor的控件。

9、为Study.Trade.Blazor项目添加BootstrapBlazor的包

10、修改Study.Trade.Blazor项目的_Imports.razor文件

修改前:

修改后:

1)删除了ABP默认的Blazorise组件需要的2行命名空间;

2)BootstrapBlazor组件需要引用BootstrapBlazor.Components

3)我们的例子需要ABP Suite自动生成的和Customer Order有关的代码,所以需要引用Study.Trade.CustomerOrders

11、开始写我们的第一个Blazor页面

如下图,在Pages/Trade目录上点右键,选择“添加”,再选择“Razor组件……”:

名称我们输入OrderList,然后点“添加(A)”:

成功后如下图:

12、设置页面的网址

就是在razor顶部加一句@page "/orders"即可:

13、注入订单的服务

就是加一句@inject ICustomerOrdersAppService CustomerOrdersAppService

(在__mports.razor里已经引用了命名空间了)

14、用BootstrapBlazor的Table组件来呈现CustomerOrder的列表

15、强势启动一下

启动后,不要点“登入”按钮,而是直接在浏览器地址栏后边加上/orders,进入我们开发的页面。

控制台报错:

报的错误是权限异常,也就是用户不须有特定的权限。

浏览器的Table的位置一直转啊转,网页底部有黄色警告栏

15、给页面声明需要的授权

16、再访问/orders路径的时候,被重定向到了登入页面

输入默认用户admin

默认密码:

1q2w3E*

登入后自动跳转到了/orders

这篇文章就先到这里。

在ABP的模块解决方案中使用BootstrapBlazor的更多相关文章

  1. 精简ABP的模块依赖

    ABP的模块非常方便我们扩展自己的或使用ABP提供的模块功能,对于ABP自身提供的模块间的依赖关系想一探究竟,并且试着把不必要的模块拆掉,找到那部分核心模块.本次使用的是AspNetBoilerpla ...

  2. 3.2 Dependencies of the Projects in the Solution 解决方案中项目间的依赖项

    3.2 Dependencies of the Projects in the Solution 解决方案中项目间的依赖项 The diagram below shows the essential ...

  3. 探索ABP的EventHub解决方案

    在上一章中,我们构建了一个简单的全栈 Web 应用程序,我们已经看到了使用 ABP 框架开发应用的典型流程,在接下来,我们将使用 ABP 框架创建更高级的应用程序. 给出具有现实世界复杂性的例子并不容 ...

  4. 手动从0搭建ABP框架-ABP官方完整解决方案和手动搭建简化解决方案实践

      本文主要讲解了如何把ABP官方的在线生成解决方案运行起来,并说明了解决方案中项目间的依赖关系.然后手动实践了如何从0搭建了一个简化的解决方案.ABP官方的在线生成解决方案源码下载参考[3],手动搭 ...

  5. ABP之模块

    ABP的反射 为什么先讲反射,因为ABP的模块管理基本就是对所有程序集进行遍历,再筛选出AbpModule的派生类,再按照以来关系顺序加载. ABP对反射的封装着重于程序集(Assembly)与类(T ...

  6. ABP之模块系统

    简介 ASP.NET Boilerplate提供了构建模块的基础结构,并将它们组合在一起以创建应用程序. 模块可以依赖于另一个模块. 通常,一个程序集被视为一个模块. 如果创建具有多个程序集的应用程序 ...

  7. P/Invoke出现错误 System.NullReferenceException”类型的未经处理的异常在 未知模块。 中发生 未将对象引用设置到对象的实例。

    问题 “System.NullReferenceException”类型的未经处理的异常在 未知模块. 中发生 未将对象引用设置到对象的实例. 解决方案 1.尝试 用管理员身份运行CMD,输入nets ...

  8. 在SharePoint解决方案中使用JavaScript (2) – 模块化

    本文是在SharePoint中使用JavaScript的第二篇文章,前面的文章包括: 在SharePoint解决方案中使用JavaScript (0) 在SharePoint解决方案中使用JavaSc ...

  9. TDSQL | 在整个技术解决方案中HTAP对应的混合交易以及分析系统应该如何实现?

    从主交易到传输,到插件式解决方案,每个厂商对HTAP的理解和实验方式都有自己的独到解法,在未来整个数据解决方案当中都会往HTAP中去牵引.那么在整个技术解决方案中HTAP对应的混合交易以及分析系统应该 ...

  10. Abp 审计模块源码解读

    Abp 审计模块源码解读 Abp 框架为我们自带了审计日志功能,审计日志可以方便地查看每次请求接口所耗的时间,能够帮助我们快速定位到某些性能有问题的接口.除此之外,审计日志信息还包含有每次调用接口时客 ...

随机推荐

  1. [转帖]Armv9 架构相比 Armv8 有何升级/区别:全面性能提升

      https://baijiahao.baidu.com/s?id=1695708603852200216&wfr=spider&for=pc 自 2011 年 10 月 Arm 首 ...

  2. Linux KVM网络处理过程

    Linux KVM网络处理过程 总体解决方法 本次遇到的问题是KVM的网桥处理不小心导致系统无法连接.处理简要总结: 进入机房,给IPMI插上网线, 开机点 Del 进入bios 设置IMPI的地址 ...

  3. 高性能MySQL实战(二):索引 | 京东物流技术团队

    我们在上篇 高性能MySQL实战(一):表结构 中已经建立好了表结构,这篇我们则是针对已有的表结构和搜索条件为表创建索引. 1. 根据搜索条件创建索引 我们还是先将表结构的初始化 SQL 拿过来: C ...

  4. MySQL查询排序和分页

    连接数据库 mysql -hlocalhost -uroot -proot 排序查询语法: select 字段列表 from 表名 order by 字段1 排序方式1, 字段3 排序方式2,字段3 ...

  5. 【JS 逆向百例】反混淆入门,某鹏教育 JS 混淆还原

    关注微信公众号:K哥爬虫,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后 ...

  6. TienChin 活动管理-工程创建

    工程模块的创建,与之前创建渠道管理一样的,所以这里就不贴图带着大家一起动手进行了,表结构我已经给到大家了,这里我只贴一下代码生成器的代码部分即可. @Test void generateActivit ...

  7. python入门之后须掌握的知识点(模块化编程、时间模块)【一】

    相关文章: 全网最详细超长python学习笔记.14章节知识点很全面十分详细,快速入门,只用看这一篇你就学会了! python入门合集: python快速入门[一]-----基础语法 python快速 ...

  8. 关于debug一晚上的一些思考,做开发到底要养成什么习惯?

    总结:日志一定要写,日志一定要写,日志一定要写! 今天晚上是我学开发过程中很不一样的一晚,今晚学到了很多. 虽然我也只是一个开发的初学小白,今天的debug分享是我的一个小方法和一个小记录,如果大佬们 ...

  9. 《ASP.NET Core 微服务实战》-- 读书笔记(第12章)

    第 12 章 设计汇总 微服务开发并不是要学习 C#.Java 或者 Go 编程--而是要学习如何开发应用以适应并充分利用弹性伸缩环境的优势,它们对托管环境没有偏好,并能瞬间启停 换句话说,我们要学习 ...

  10. MySQL架构体系介绍

    一.MySQL的完整架构体系 MySQL完整的架构体系: (1)Connectors 指的是不同语言中与SQL的交互. (2)Connection Pool 管理缓冲用户连接,线程处理等需要缓存的需求 ...