欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

程序员文章站 2022-10-11 13:17:51
net5 版本以core为底层非framework框架的windowservice 服务。在vs里叫workservice 可以以cmd方式运行也可以以windowservice方式运行,部署简单。p...

net5 版本以core为底层非framework框架的windowservice 服务。

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

在vs里叫workservice 可以以cmd方式运行也可以以windowservice方式运行,部署简单。

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

program.cs如下,是关键配置和启动项

原始的host.createdefaultbuilder(args) 需要增加 .usewindowsservice() 支持 对windowservice

quarzt 在 net5的nuget 中叫quartz.extensions.hosting

services.addhostedservice<worker>(); 是原始的windows定时任务版本

代码如下, 在await task.delay(1000, stoppingtoken); 设定定时启动的毫秒数就可以了

quartz 原始版本(program.cs代码截图)

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

在目前这个quartz 3.3.3 版本中好像不能一个key 下多个job集成作业。所以每个job需要一个一个注册。推荐使用优化版本

quarzt 优化版本(program.cs代码截图)

对原始版本进行了封装。在每一次调用的时候会注册新的唯一实例。

Net5 WorkService 继承 Quarzt 及 Net5处理文件上传功能

以下是帮助类

以下是job

程序会根据corn 设定的运行时间定期在task execute(ijobexecutioncontext context)方法内运行

然后就是蛮搞笑的,大伙都不用net5 吗。写服务上传文件。遇到问题搜索net5处理文件上传问题,居然都是空白的。 那我就只好自己写解决方案了。

客户端图片上传的httphelper.cs部分代码如下

重点是服务端的接收,部分代码如下

哪怕你用的是文件流上传,不是表单提交。但是你的文件依旧在request.form.files 里!!!!

但你也可以通过request.body 读到流

到此这篇关于net5 workservice 继承 quarzt 以及 net5处理文件上传的文章就介绍到这了,更多相关net5 workservice 继承 quarzt 内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!