一、课程介绍

大家都知道如果想要程序一直运行在windows服务器上,最好是把程序写成windows服务程序;这样程序会随着系统的自动启动而启动,自动关闭而关闭,不需要用户直接登录,直接开机就可以启动。 今天将给大家带来实际项目中经常运用的技术—C# 如何使用创建Windows服务进行应用程序开发。

本课程适合人群如下:

1、有一定的NET开发基础并对Windows服务编程技术有一定了解和认识。

2、进一步加深提高和扩展对Windows服务编程技术的认识视野。

3、喜欢阿笨的干货分享课程的童鞋们。

如果你觉得阿笨的《C# Windows服务开发从入门到精通》分享课程只是仅仅带领大家学习"C#如何一步一步的创建Windows服务应用程序的话,那么你就大错特错了。

阿笨:你说好的给大家带来的干货呢?

如果您同样对本次分享课程感兴趣的话,那么请跟着阿笨一起学习,看看阿笨在实际项目中是如何玩转Windows服务编程技术的吧!

废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。

二、涉及覆盖的知识点

2.1、 C# Windows服务应用程序开发零基础上手入门实战演练。

2.2、通过第三方组件 (Topshelf)创建C# Windows服务应用程序。

2.3、分享C# Windows服务编程在实际项目中的一些小技巧和小技能。

1)、掌握常用 Windows服务操作bat命令。

2)、System.Threading.Timer定时器的妙用 。

3)、如何优雅的调试Windows服务应用程序。

4)、如何为应用程序添加管理员权限。

5)、如何通过bat文件制作 Windows服务安装和卸载一键安装包。

6)、系统项目中有很多后台定时任务,我们该怎么办?阿笨推荐采用"按功能模块划分+ 服务自治的原则",进行管理。

本次分享课程最终目的:

熟练地掌握在实际项目开发中遇到此类需求开发场景能够灵活并高效的以优雅方式创建Windows服务应用程序!

三、概念名称含义解释

3.1、什么是计算机服务?

3.2、什么是Windows服务?

3.3、 什么是 Topshelf ?

四、源码在线解读和演示

4.1、 C# Windows服务应用程序开发零基础上手入门实战演练。

4.1.1、C#编写的Windows服务基本应用流程如下:

1)、如何编写windows服务程序。

2)、如何卸载windows服务程序。

3)、如何调试windows服务程序。

4)、如何安装windows服务程序。

4.2、通过第三方组件 (Topshelf)创建C# Windows服务应用程序。

Install-Package Topshelf   Install-Package Topshelf.Log4Net

github官网地址:https://github.com/Topshelf/Topshelf

4.3、分享C# Windows服务编程在实际项目中的一些小技巧和小技能。

1)、掌握常用 Windows服务操作bat命令。

2)、System.Threading.Timer定时器的妙用 。

如何灵活的解决我们实际项目中经常遇到的定时器执行时间和间隔时间出现的并发问题。

3)、如何优雅的调试Windows服务应用程序

4)、  如何为应用程序添加管理员权限。

5)、  如何通过bat文件制作 Windows服务安装和卸载一键安装包

6)、系统项目中有很多后台定时任务,我们该怎么办?阿笨推荐采用"按功能模块划分+ 服务自治的原则“,进行管理。

 
 

五、总结

如果您想更加全面的学习一下关于阿笨项目中使用Windows服务应用程序的实战技能,推荐大家可以学习一下阿笨早期之前分享的《.NET线程池技术项目实战演练》课程。俗话说的好:师父领进门修行在个人,希望大家在学习的道路上一直坚持下去!

C# Windows服务开发从入门到精通的更多相关文章

  1. [.NET开发] C#面向服务WebService从入门到精通

    C#面向服务WebService从入门到精通>包含以下两个部分: 一.<C#远程调用技术WebService修炼手册[基础篇]> 本次分享课您将学习到以下干货知识点: 1).WebS ...

  2. 《Java 开发从入门到精通》—— 2.3 使用IDE工具序

    本节书摘来异步社区<Java 开发从入门到精通>一书中的第2章,第2.3节,作者: 扶松柏 , 陈小玉,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.3 使 ...

  3. Nginx开发从入门到精通 学习目录分享学习 (阿里著作)

    Nginx开发从入门到精通   缘起 nginx由于出色的性能,在世界范围内受到了越来越多人的关注,在淘宝内部它更是被广泛的使用,众多的开发以及运维同学都迫切的想要了解nginx模块的开发以及它的内部 ...

  4. C#面向服务WebService从入门到精通

    <C#面向服务WebService从入门到精通>包含以下两个部分: 一.<C#远程调用技术WebService修炼手册[基础篇]>本次分享课您将学习到以下干货知识点:1).We ...

  5. 路由其实也可以很简单-------Asp.net WebAPI学习笔记(一) ASP.NET WebApi技术从入门到实战演练 C#面向服务WebService从入门到精通 DataTable与List<T>相互转换

    路由其实也可以很简单-------Asp.net WebAPI学习笔记(一)   MVC也好,WebAPI也好,据我所知,有部分人是因为复杂的路由,而不想去学的.曾经见过一位程序猿,在他MVC程序中, ...

  6. ASP.NET Core Windows服务开发技术实战演练

    一.课程介绍 人生苦短,我用.NET Core!大家都知道如果想要程序一直运行在Windows服务器上,最好是把程序写成Windows服务程序:这样程序会随着系统的自动启动而启动,自动关闭而关闭,不需 ...

  7. Topshelf 一个简化Windows服务开发的宿主服务框架

    Topshelf是 基于.net框架开发的宿主服务框架.该框架简化了服务的创建,开发人员只需要使用 Topshelf编写一个控制台程序,就能安装为Windows服务.之所以这样原因非常简单:调试一个控 ...

  8. .NET Windows服务开发流程

    前段时间做一个数据迁移项目,刚开始用B/S架构做的项目,但B/S要寄存在IIs中,而IIs又不稳定因素,如果重启IIs就要打开页面才能运行项目.有不便之处,就改用Windows服务实现.这篇就总结下, ...

  9. [书目20160624]Android应用开发从入门到精通

    卢海东 著 第1章 揭开神秘面纱——Android系统简介 1   1.1 认识Android系统 2   1.1.1 Android成长历程 2   1.1.2 发行版本 3   1.1.3 得到大 ...

随机推荐

  1. 使用sp_executesql

    建议您在执行字符串时,使用 sp_executesql 存储过程而不要使用 EXECUTE 语句.由于此存储过程支持参数替换,因此 sp_executesql 比 EXECUTE 的功能更多:由于 S ...

  2. 奈奎斯特定理 and 香农定理

    -----------------------整理自<21ic电子网> 奈奎斯特定理(Nyquist's Theorem)和香农定理(Shannon's Theorem)是网络传输中的两个 ...

  3. C# 特性(Attribute)详细介绍

    1.什么是Atrribute 首先,我们肯定Attribute是一个类,下面是msdn文档对它的描述:公共语言运行时允许你添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注 ...

  4. 通过anaconda进行python多版本控制

    ---恢复内容开始--- linux与windows通用. 1. 假设电脑上已经转好anaconda3. (anaconda 默认装好了python3.jupyter.spyter) 2. 现在需求是 ...

  5. SURF 特征匹配

    参考:http://www.cnblogs.com/ronny/p/4045979.html,博主对源码进行了分析,不过很多没看明白. 分为几个部分.积分图:借助积分图像,图像与高斯二阶微分模板的滤波 ...

  6. .net MVC 登陆模块后台代码

    首先是拦截器 public class AuthLoginAttribute : ActionFilterAttribute { public bool IsLogin = true; /// < ...

  7. IntelliJ Idea中创建package的问题

    在idea中创建package时,会一直往后面累加 想在com.huayang下面再新建一个service,普通的做法是选中了huayang.dao--->然后右键--->新建了一个pac ...

  8. Java第三阶段学习(十二、HttpServletRequest与HttpServletResponse)

    一.HttpServletRequest 1.概述: 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和 ...

  9. JPA学习

    [JPA 简介]JPA(Java Persistence API) JPA 不是一个ORM 的框架, 而是一个ORM 的规范,只指定了一些接口, 具体的实现由应用服务器厂商来提供实现. JPA的实现产 ...

  10. 配置免SSH

    在要远程登录别人的服务器中生成授权标识:ssh-keygen -t rsa上传至需被免登录的服务器:scp ~/.ssh/id_rsa.pub root@xx.xx.xx.xx:/root/.ssh/ ...