8

开源的轻量级任务调度框架 - Dotnet工具箱

 1 year ago
source link: https://www.cnblogs.com/dotnet-box/p/17495668.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!

1. 开源的轻量级任务调度框架

FluentScheduler 是一个开源的任务调度框架,支持 Fluent 语法,通过 Nuget 安装引用, 和 Quartz.Net 相比,FluentScheduler 足够轻量,非常容易上手。

下面是一个仅仅使用几行代码,配置后台任务的示例。

JobManager.Initialize();

JobManager.AddJob(
    () => Console.WriteLine("5分钟过去了."),
    s => s.ToRunEvery(5).Minutes()
);

不同时间场景的任务。

JobManager.AddJob(
    () => Console.WriteLine("每天 20 点 15 执行一次 "),
    s => s.ToRunEvery(1).Days().At(20, 15)
);

JobManager.AddJob(
    () => Console.WriteLine("定时 2023年10月10日 执行"),
    s => s.ToRunOnceAt(new DateTime(2023,10,10))
);

JobManager.AddJob(
    () => Console.WriteLine("每 5s 执行一次..."),
    s => s.ToRunOnceIn(5).Seconds()
);

删除任务

JobManager.AddJob(
    () => Console.WriteLine("001 任务"),
    s => s.WithName("001").ToRunEvery(1).Days().At(20, 15)
);

JobManager.RemoveJob("001");

获取所有的后台任务

var list = JobManager.AllSchedules;

获取正在运行的任务

var list = JobManager.RunningSchedules;

监听任务的开始和结束

JobManager.JobStart += info 
    => Logger.Information($"{info.Name}: started");

JobManager.JobEnd += info 
    => Logger.Information($"{info.Name}: ended ({info.Duration})");

2. 基于 Blazor 的开源快速开发框架

20230529215628.png

Blazor Spark 是一个开源的 Web 框架,可以通过富有表现力和直观的语法来加速 Web 应用程序开发。

Blazor Spark 基于 .NET Blazor Server 构建并进行了扩展,可以让开发人员快速地构建 Web 应用程序。它提供了无缝且高效的开发体验,让您可以专注于制作出色的应用程序,而 Blazor Spark 会处理底层的复杂问题。

一分钟内开始

Blazor Spark 框架很容易上手,如下

C:\code> dotnet tool install --global BlazorSpark.Console

C:\code> spark install

C:\code> spark new MyApp

Spark 的 CLI 支持,开发非常方便。

约定优于配置

Spark 拥抱约定,让开发人员能够自由构建,而不用考虑太多的细节。

20230529222826.png

Spark 有 身份验证、邮件和日志记录等功能。让您自由创作,无需为小事操心。

20230529222854.png

Spark CLI 可以帮助您创建应用程序、运行迁移和生成类。

20230529222938.png

Spark 是一个还在开发中的项目, 感兴趣的同学可以关注一下。

3. 基于 .NET 6 开发的 Excel 转 JSON 神器

作为一个打工人来说,日常接触过比较多的数据格式就有 Excel 和 JSON 了,今天推荐一个开源的 Excel 转 JSON 的工具, 支持在线访问,可以大大提高工作效率。

202305272245025.png

Excel2Json 是一个基于 .NET 6 和 Angular 开发的开源项目,它可以非常方便的把 Excel 转成 JSON 格式, 另外 JSON 支持在线预览和下载。

作者是 Brian Lagunas ,微软 MVP 和 Xamarin MVP,同时也是 Prism 框架的作者。

202305272251768.png

Excel2Json 的界面非常简洁, 左边支持上传 CSV 和 XLSX 的Excel 文件。选择文件上传后,页面左右分别显示了 Excel 和 JSON 数据,如下

202305272254257.png

另外 Excel 还支持在线编辑,数据更新后,右边的 JSON 也会同步更新,并且支持下载,非常方便。

Excel2Json 使用了 .NET 6 和 Angular,作者还把整个项目的开发过程录制了视频教程,感兴趣的同学可以去学习一下。

202305272304981.png
202305272303978.png
%E9%BB%84%E8%89%B2%E7%AC%94%E8%AE%B0%E6%9C%AC%E7%94%B5%E8%84%91%E5%B1%8F%E5%B9%95%E7%AE%80%E7%BA%A6%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7%E4%BA%8C%E7%BB%B4%E7%A0%81.png

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK