gpt4 book ai didi

介绍ServiceSelf项目

转载 作者:我是一只小鸟 更新时间:2023-04-15 22:31:28 36 4
gpt4 key购买 nike

ServiceSelf

做过服务进程功能的同学应该接触过Topshelf这个项目,它在.netframework年代神一搬的存在,我也特别喜欢它。遗憾的是在.netcore时代,这个项目对.netcore程序的支持没有跟进,最近项目也存档停止更新了.

我在开源的一些工具里实现放了自安装和卸载服务的功能的代码,本着够用就好的习惯,并没有把这个功能独立为项目,所以也没有对这个功能做特别好的设计。现在我创建了一个新的 ServiceSelf 开源项目,把自安装和卸载服务的功能在此重新设计,其功能是为 .NET 泛型主机 的应用程序提供自安装为服务进程的能力,支持windows和linux平台.

1 nuget

为了方便使用, nuget包已经发布到 https://www.nuget.org/packages/ServiceSelf/ 。

                        
                          <PackageReference Include="ServiceSelf" Version="1.0.0" />

                        
                      

2 使用示例

                        
                          static void Main(string[] args)
{
    // 创建Host之前调用Service.UseServiceSelf(args)
    if (Service.UseServiceSelf(args))
    {
        var builder = WebApplication.CreateBuilder(args);

        // 为Host配置UseServiceSelf()
        builder.Host.UseServiceSelf();

        var app = builder.Build();
        app.MapGet("/", context => context.Response.WriteAsync("ServiceSelf"));
        app.Run();
    }
}

                        
                      
                        
                          static void Main(string[] args)
{
    // 创建Host之前调用Service.UseServiceSelf(args)
    if (Service.UseServiceSelf(args))
    {
        var host = Host.CreateDefaultBuilder(args)
            // 为Host配置UseServiceSelf()
            .UseServiceSelf()
            .ConfigureServices(service =>
            {
                service.AddHostedService<AppHostedService>();
            })
            .Build();

        host.Run();
    }
}

                        
                      

3 服务控制

当yourapp集成ServiceSelf之后,在管理员或root下使用如下命令控制yourapp服务 。

windows平台 。

                        
                          yourapp.exe start // 安装并启动服务

                        
                      
                        
                          yourapp.exe stop // 停止并删除服务

                        
                      

linux平台 。

                        
                          sudo ./yourapp start // 安装并启动服务

                        
                      
                        
                          sudo ./yourapp stop // 停止并删除服务

                        
                      

最后此篇关于介绍ServiceSelf项目的文章就讲到这里了,如果你想了解更多关于介绍ServiceSelf项目的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com