今天推荐的文章会谈到一些让你工作更轻松的开源.NET函数库。

即使业界有时候认为.NET开源社区不太健康,很多开发团队都更多依赖于微软提供的东西来开发。不过最近在.NET世界中还是诞生了一些优秀和有意思的开源函数库。

thomasvm就在他的博文中推荐了一些比较有代表性的开源函数库。这些函数库都是解决一些比较通用的问题,具备良好的文档,并非是一个强制你遵循某种规则和代码结构的框架,可以很好地嵌入到你的应用程序当中。当然,作者也给出了一些推荐理由:

  • Hangfire。这是一个运行在ASP.NET中的后台任务执行工具。之前我专门介绍过。它内置漂亮的控制面板,对后台执行的方法没有特殊要求,对托管应用没有要求,作者对社区反馈反应迅速。
  • Postal。借鉴了Razor的灵感,使用类似View的概念来实现邮件模板。也封装了邮件发送的常用接口。
  • Formo。用dynamic数据类型让读取配置文件的内容更加灵活,当然也支持额外定义的POCO。
  • CsvHelper。在导入CSV文件的时候,往往需要写一些特定的读取代码。而只需要自己定义好映射,CsvHelper就帮你搞定一切。
  • TopShelf。以常规的方式编写Windows Service的时候,需要太多步骤和代码;而用TopShelf,只需要简单的创建一个类,并传递到HostFactory.Run中就行。安装也简单到.\yourservice.exe install。

    更详细的内容,可”阅读原文“。

    原文链接:http://thomasvm.github.io/blog/2015/03/17/open-source-net-libraries-that-make-your-life-easier/

  • 人生维艰,何不利用开源.NET函数库让工作更轻松的更多相关文章

    1. 如何持续集成/交付一个开源.NET函数库到Nuget.org

      (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:这是一个简单的入门向导,涉及到GitHub.AppVeyor和Nuget.org. 最 ...

    2. 利用开源的TaskScheduler组件实现监控和管理windows计划任务

      对于计划任务的执行有很多种解决方案,如利用开源Quartz作业调度框架,在SQL Server的作业等等,同时Windows的任务计划程序功能也很强大,利用此可以很方便的实现很多计划任务,除了人工进行 ...

    3. 如何在我们项目中利用开源的图表(js chart)

              最近觉得应该把自己在技术上的一些心得记录在博客里面跟大家分享,一起讨论,一起成长!       这篇随笔主要为介绍chart在项目中的运用,因为在我们看到一些开源的chart时候,是使 ...

    4. IT观察】网络通信、图片显示、数据库操作……Android程序员如何利用开源框架

      每个Android 程序员都不是Android应用开发之路上孤军奋战的一个人,GitHub上浩如烟海的开源框架或类库就是前人为我们发明的轮子,有的轮子能提高软件性能,而有的轮子似乎是以牺牲性能为代价换 ...

    5. 第三百五十七节,Python分布式爬虫打造搜索引擎Scrapy精讲—利用开源的scrapy-redis编写分布式爬虫代码

      第三百五十七节,Python分布式爬虫打造搜索引擎Scrapy精讲—利用开源的scrapy-redis编写分布式爬虫代码 scrapy-redis是一个可以scrapy结合redis搭建分布式爬虫的开 ...

    6. iOS基本动画/关键帧动画/利用缓动函数实现物理动画效果

      先说下基本动画部分 基本动画部分比较简单, 但能实现的动画效果也很局限 使用方法大致为: #1. 创建原始UI或者画面 #2. 创建CABasicAnimation实例, 并设置keypart/dur ...

    7. 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(下篇)

      续篇—— 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(上篇) 上篇文章写了如何构建一个支持IKEv2的VPN,本篇记录的是如 ...

    8. php利用wsh突破函数禁用执行命令(安全模式同理)

      php利用wsh突破函数禁用执行命令(安全模式同理) 前提.需要服务器支持wsh.并知道php安装目录 但是php利用wsh执行命令是没有asp的权限高的.   突破代码 <?php $cmd= ...

    9. CocoaPods的安装及使用/利用开源库Diplomat实现分享及第三方登录/git的使用

      <<史上最简洁版本>> 1.gem sources -l查看 当前的源 //1.1 sudo -i..以下都是以管理员的身份来操作的 2.gem sources --remov ...

    随机推荐

    1. 使用存取方法来设置Property value

      对比如下代码,第一种使用了存取方法来设置,第二种直接对实例变量操作.显然我们应该采用第一种, 使用第二种情况,简单的情况还好,如果情况一旦复杂,就非常容易出错.并且直接对实例变量操作,不会引发KVO通 ...

    2. EL表达式从request和session中取值

      在Action中保存登录的基本信息:request.getSession().setAttribute("adminid", str); 在JSP页面中:${sessionScop ...

    3. 菜鸟学习Spring Web MVC之二

      有文章从结构上详细讲解了Spring Web MVC,我个菜鸟就不引据来讲了.说说强悍的XP环境如何配置运行环境~~ 最后我配好的环境Tomcat.Spring Tool Suites.Maven目前 ...

    4. 分享一个导航条哈(⊙o⊙)…

      原文:http://www.sharejs.com/js/menu/1601 CSS样式表: <!--[if lt IE 9]> <script src="http://h ...

    5. 第16章 使用Squid部署代理缓存服务

      章节概述: 本章节从代理缓存服务的工作原理开始讲起,让读者能够清晰理解正向代理(普通模式.透明模式)与反向代理的作用. 正确的使用Squid服务程序部署代理缓存服务可以有效提升访问静态资源的效率,降低 ...

    6. PPTP服务器配置选项详解

      导读 PPTP服务器配置文件的格式与其它许多Unix程序相似,每一行包含一项配置内容,以配置选项名称开始,后面紧跟参数值或者关键字,它们之间用空格分隔.在读取配置文件时,pptpd进程将忽略空行和每一 ...

    7. 关于 datasnap Stream的英文博客能容

      转载:http://blogs.embarcadero.com/jimtierney/2009/04/06/31461/ DataSnap Server Method Stream Parameter ...

    8. HDU 4435 charge-station () bfs图论问题

      E - charge-station Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u ...

    9. Linux 系统安全 抵御TCP的洪水

      抵御TCP的洪水 分类: LINUX tcp_syn_retries :INTEGER默认值是5对 于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃.不应该大于255,默认值是5,对应于1 ...

    10. Linux下crontab命令的用法

      cron来源于希腊单词chronos(意为“时间”),是linux系统下一个自动执行指定任务的程序.例如,你想在每晚睡觉期间创建某些文件或文件夹的备份,就可以用cron来自动执行. 服务的启动和停止 ...