1、在Shared文件夹下新增一个razor
2、页面初始化的时候获取订单信息
准备一个名为OrderId的参数
准备重写页面初始化时的方法
改成异步的形式来重写
4、获取数据
就3行代码。
声明这个razor从TradeComponentBase继承,仅仅是为了直接调用ObjectMapper。
因为ABP Suite自动生成的代码,只能直接返回Dto对象,而不能直接返回UpdateDto,所以需要先获取Dto,再映射到UpdateDto。
5、更新数据到数据库
6、准备OrderUpdatePage来测试效果
7、OrderUpdatePage从URL里面获取订单的编号
8、在页面合适的区域放置OrderUpdateView,并且把URL中的OrderID,传递给OrderUpdateView组件
9、启动程序,在浏览器中测试效果
直接输入编辑订单的网址,页面报错
控制台有详细的异常信息,原来是没有CustomerOrderDto到CustomerOrderUpdateDto的映射:
10、添加CustomerOrderDto到CustomerOrderUpdateDto的映射
打开Study.Trade.Blazor项目的TradeBlazorAutoMapperProfile.cs文件
添加一行:
11、再次直接进入编辑页面,成功
保存后,跳转到列表页面,看到了自己更新的摘要。
12、最后为什么看到了订单的Guid?
因为先前为了直接在浏览器里输入订单的Guid,所以修改了订单列表的视图,增加了显示Id的列:
黑夜里不停折腾的代码行者。


















浙公网安备 33010602011771号