【c#】关于前后端开发学习的心得体会
结果图
不熟悉的知识
1、webApi 2、关于tbControl控件的用法,以及dgv按钮添加事件 3、sqlsugar关系库的使用 4、
设计流程
1、项目中建设实体类 2、添加dbcontext—写后端的的服务层service(这里主要是操作数据库,所以要引进dbcontext)—控制层(这里主要是api与前端接交互数据,将service处理的而结果拿到或者发送,因此这里需要引进service,一般查询都用get,更新用post)—接口服务层(放到最后是因为有时候会经常要改服务层) 3、写前端界面—写API交互类—前端调用API
代码展示
我会把每一个知识点详解的链接发在这里,等我慢慢更新
总结
算是自己第一次独立去做前后端分开的小功能,这个功能是在原有的项目框架上去新增,所以一开始不知道从哪里下手很无措。做完之后自己总结了一下,前后端开发的整一个步骤: 1、项目中建设实体类 2、添加dbcontext—写后端的的服务层service(这里主要是操作数据库,所以要引进dbcontext)—控制层(这里主要是api与前端接交互数据,将service处理的而结果拿到或者发送,因此这里需要引进service,一般查询都用get,更新用post)—接口服务层(放到最后是因为有时候会经常要改服务层) 3、写前端界面—写API交互类—前端调用API
其次,我初步了解了IEnumerable的使用,还需要进一步去学习,在编辑界面数据去保存时,一开始设想的实现是 直接实例化一个对象,去拿到数据,但是对象的字段太多了,想偷个懒,就没有。第二个解决办法是用反射来实现,每次编辑一行,获取每行编辑的数据直接更改对象对应的值就好了,但是这个想法试过了行不通,因为当一次性编辑多个字段时,反射就没有用,可能是我目前的经验还没找对实现的方法。最后决定用List,循环每行单元格去拿值,但是最后存入数据库的时候,他会一直报错字段个数不匹配,最终,这个想法还是夭折了,找了大佬请教了一下,他只用了两行代码解决了我的困扰,嗯大佬就是牛逼。
//将单元格对象转换成了目标对象,每次一个单元格修改,目标对象中的值就会修改,然后一次性传输。 if(currentRow.DataBoundItem is PredictLimitConfigDto dto) { dto.MODIFIED_TIME = DateTime.Now; ForecastCapacityBLL.SavePredictLimitConfig(dto); } public static void SavePredictLimitConfig(params PredictLimitConfigDto[] dtos) { //api }