.Net 开发自然少不了开源项目的支持, 以下是我参与或者编写的部分开源项目, 为我的开发工作提供了不少 帮助, 希望能够对你有所帮助。
使用 NHibernate 实现 ASP.NET Core 认证服务的适配器, 可以不再局限于微软的 Entity Framework Core , 可以使用 NHibernate 支持的任意数据库作为存储(内置支持 SQL Server 和 PostgreSQL, 其它数据库需要修改一下映射文件)。
这个项目得到了 NHibernate 组织的认可, 我也非常荣幸的的加入了 NHibernate 组织。
项目主页: https://github.com/nhibernate/NHibernate.AspNetCore.Identity
NuGet 包: https://www.nuget.org/packages/NHibernate.AspNetCore.Identity
GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现, 利用 GeoServer 可以方便的发布地图 数据。 在工作中需要使用空间数据, 使用 GeoServer 来发布空间服务是个不错的选择。 这个镜像 除了 GeoServer 之外, 还包括了一些常用的插件 (CSS, YSLD, Vector Tile, MBStyle 等) , 开箱可用。
GeoServer 主页: https://geoserver.org/
Docker Hub 地址: https://hub.docker.com/r/beginor/geoserver
Jexus 是一款国产的 Linux 平台上的高性能WEB服务器 和负载均衡网关,以支持 ASP.NET、 ASP.NET CORE、 PHP 为特色, 同时具备反向代理、 入侵 检测等重要功能。 可以这样说, Jexus是 .NET、 .NET CORE 跨平台的最优秀的宿主服务器,如 果我们认为它是 Linux平台 的 IIS ,这并不为过,因为, Jexus 不但非常快,而且拥有 IIS 和 其它 Web 服务器所不具备的高度的安全性,这是政府机构和重要企业对web服务器最必要也是最重要的 品质需求。
在工作中也用到了这个 Jexus 服务器, 效果还挺好, 于是我便制作了这个 Docker 镜像, 并得 到了 Jexus 作者宇内流云的认可。
Jexus 社区: https://www.linuxdot.net/
Docker Hub 地址: https://hub.docker.com/r/beginor/jexus-x64
自己写的 OWIN 静态文件处理中间件, 功能如下:
项目主页: OWIN 静态文件中间件, 博文介绍。
iOS 上(当时)大名鼎鼎的 PNChart , 超简约,超易用,带有动画效果的 Chart 库, 支持下面 4 种类型 Chart:
项目主页: PNChartTouch
ArcGIS for Android 的 Xamarin.Android 绑定, 绝大多数功能都已经可以使用, 包括 GraphicsLayer, FeatureLayer, Symbol, DynamicLayer 等。
项目主页: MonoDroid.ArcGIS
百度地图 Android SDK 的 Xamarin.Android 绑定, 目前绑定的的版本是 v2.3.1。
项目主页: Baidu Map Android SDK Binding
ESRI ArcGIS Runtime SDK for iOS 的 MonoTouch 绑定, 如果是做 iOS 平台开发, 并且采用了 Xamarin.iOS (MonoTouch) 平台, 需要用到高级地图功能的话, 可 以考虑这个类库, 当然, 这个项目还不是很完善, 并且 ESRI 也在不断更新, 因此还需要继续折腾!
项目主页: https://github.com/beginor/MonoTouch.ArcGIS
微软推出的最新的 HTTP 应用程序的编程接口, 被称之为“现代化的 HTTP 编程接口”, 提供了现代化的 Web Service 的客户端组件, 能够同时在客户端与服务端同时使用的 HTTP 组件(比如处理 HTTP 标头和消息), 为客户端和服务端提供一致的编程模型, 这个组件在开源之后, 在 Xamarin.iOS 和 Xamarin.Android 中也出现了, 但是唯独没有推出官方的 Silverlight 版本, 我从 mono 的源代码中分离出了这个项目, 针对 Silverlight 平台修改, 保留了绝大部分功能, 这里有这个项目的介绍。
项目主页: https://github.com/beginor/System_Net_Http
开源的 Silverlight 导航与加载相结合的框架, 我的原创作品, 最大特点是按需从服务端加载所需的 dll 文件, 能够明显减少 Silverlight 程序的初次加载时间, 项目越大、 模块越多, 效果越明显。 这里有一篇详细的介绍, 推荐所有做 Silverlight 开发的同学采用。
项目主页: https://github.com/beginor/AssemblyNavigation
做 iOS 5.0 开发时, 需要用到一个 GridView , 最终决定采用 KKGridView , 因此便有了这个 MonoTouch.KKGridView , 也就是 KKGridView 的 MonoTouch 绑定, 如果你需要为 iOS 6.0 之前的旧设备开发或者 iOS 自带的 GridView 不能满足需要时, 可以使用这个项目。
项目主页: https://github.com/beginor/MonoTouch.KKGridView
当初大名鼎鼎的 iBATIS.Net 现在已经改名为 MyBatis.Net , 以灵活的 dynamic sql 著称, 自从 1.6.2 (for .Net 2.0)之后就不再更新了, 曾经在项目中使用过相当长一段时间, 也曾经是 iBATIS 的铁杆粉丝, 由于要在 .Net 4.0 项目中要用到它, 所以有了这个针对 .Net 4.0 的升级版本, 通过了 SQL Server 的全部测试, 可以直接在生产环境使用。
项目主页: https://github.com/beginor/iBATIS_2010
当然, 还有一些不值得一提的小项目, 甚至是我平时的一些练习, 就不列出来献丑了, 具体请浏览我的 GitHub 页面。