今天空了继续学习下CleanArchitecture
读了下代码 觉得写的真好,对平时工作一定有锁启发帮助。
我按照运行好后,做一个操作,然后查看这个接口后面怎么做的这个思路来看代码的 。
1,运行项目后,我们点击“Todo” 这个menu,跳转到登录页面,默认用户名密码是:administrator@localhost 和Administrator1!
然后能见到一个todolist 的页面,如下图,点击AddItem
2,输入New Item Added,查看f12 network
可以找到他调用的是一个Post api/Todoitems 的接口。
3,找代码 哪里是这个接口的入口点呢?第一反应,我去代码中搜有没有controller ,没有找到任何controller。
后面发现是用了Web 项目下的program.cs里的 app.MapEndpoints();
我们可以找到
4,于是找到了 extend EndpointGroupBase 这些类
可以找到对应的 CreateTodoItemCommand 这个是MediaR 这个做的。
可以看到saveChangesAsync 就是存入数据库了。