今天推荐的文章会谈到一些让你工作更轻松的开源.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. struts2 访问国际化资源 <s:text>作为属性

      保留全局级国际化信息资源文件.并在message.properteis中增加一个带有参数的国际化信息. labela = labela in zh_CN labelb = labelb,{0} < ...

    2. Gradle用户指南(3)-构建Java项目

      1.构建基本的Java项目 为了使用 Java 插件,添加下面代码到构建文件: build.gradle apply plugin: 'java' 这个就是 定义一个 Java 项目的全部.它会将 J ...

    3. 转 XenServer、XenCenter安装测试

      本文转自:http://blog.sina.com.cn/s/blog_5611597901014ze4.html 系统环境:win7 64bit  vmware-8.0.1 镜像文件:XenServ ...

    4. WebRequest中的工厂方法模式

    5. 在生产环境使用Docker部署应用

      导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...

    6. ZeroMQ之Request/Response (Java)

      自己最开始是在cloud foundry中接触过消息服务器(nats),或者说是消息中间件,也算是初步知道了一个消息服务器对于分布式的网络系统的重要性,后来自己也曾想过在一些项目中使用它,尤其是在一些 ...

    7. fsck检查和修复文件系统

      重视:fsck不能乱用.先要把文件系统umount掉,然后检查.最好启动到单用户模式下fsck. 常见的5种损坏类型 1 未被引用的inode 2 难以置信的超大链接数 3 没有记录在磁盘块映射表中的 ...

    8. ssh: connect to host localhost port 22: Connection refused 问题

      错误原因:1.sshd 未安装2.sshd 未启动 3.防火墙 4需重新启动ssh 服务 解决方法:1.确定安装sshd: $ sudo apt-get install openssh-server ...

    9. 字符编码浅识:关于Unicode与UTF-8

      参考自阮一峰博客:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html Unicode只是一个符号集,它只规定了符号的 ...

    10. 【转】Spring Quartz的原理

      Quartz是一个大名鼎鼎的Java版开源定时调度器,功能强悍,使用方便. 一.核心概念 Quartz的原理不是很复杂,只要搞明白几个概念,然后知道如何去启动和关闭一个调度程序即可. 1.Job 表示 ...