開源專案是眾多組織與個人分享的元件或專案,作者付出的心血我們是無法體會的,所以首先大家要心存感激、尊重。請嚴格遵守每個專案的開源協議後再使用。尊重智慧財產權,共建和諧開源社群。
以下開源專案(含元件),從網路蒐集,後期會不斷補充。
ConsoleTableExt是在C#控制檯應用程式中使用列印格式良好的表的開源庫。
功能特性
- 支援框圖形字元
- 表對齊(左右和中間)
- 柱對齊(左/右/中)
- 表可以有標題,可以更改文字顏色和標題背景顏色,支援標題對齊(左/右/中)
- 支援power char對映,強大的定製能力
- 包含一些流行的形式,如標記表。。。
- 支援文字格式化程式(包括標題)
- 支援多種資料型別:DataTable、List。。。
- 支援後設資料行(放置在表的頂部或底部)
- 柱最小長度
- 支援.NET Framework>=3.5、.NET Core
開源地址:https://github.com/minhhungit/ConsoleTableExt
FluentFTP 是 C#.NET 下最好用的Ftp傳輸開源庫。它是一個完全管理的FTP和FTPS庫,適用於.NET和.NET Standard,針對速度進行了優化。它提供廣泛的FTP命令、檔案上載/下載、SSL/TLS連線、自動目錄列表解析、檔案雜湊/校驗和、檔案許可權/CHMOD、FTP代理、FXP傳輸、UTF-8支援、非同步/等待支援、Powershell支援等等。
開源地址:https://github.com/robinrodricks/FluentFTP
開發文件:https://github.com/robinrodricks/FluentFTP/wiki
開源地址:https://github.com/dotnetcore/DotnetSpider
Apollo(阿波羅)是攜程框架部門研發的分散式配置中心,能夠集中化管理應用不同環境、不同叢集的配置,配置修改後能夠實時推送到應用端,並且具備規範的許可權、流程治理等特性,適用於微服務配置管理場景。
服務端基於Spring Boot和Spring Cloud開發,打包後可以直接執行,不需要額外安裝Tomcat等應用容器。
Java客戶端不依賴任何框架,能夠執行於所有Java執行時環境,同時對Spring/Spring Boot環境也有較好的支援。
.Net客戶端不依賴任何框架,能夠執行於所有.Net執行時環境,參考《.Net客戶端使用指南》。
更多產品介紹參見Apollo配置中心介紹。
本地快速部署請參見Quick Start。
產品特性
-
統一管理不同環境、不同叢集的配置
- Apollo提供了一個統一介面集中式管理不同環境(environment)、不同叢集(cluster)、不同名稱空間(namespace)的配置。
- 同一份程式碼部署在不同的叢集,可以有不同的配置,比如zk的地址等
- 通過名稱空間(namespace)可以很方便的支援多個不同應用共享同一份配置,同時還允許應用對共享的配置進行覆蓋
- 配置介面支援多語言(中文,English)
-
配置修改實時生效(熱釋出)
- 使用者在Apollo修改完配置併發布後,客戶端能實時(1秒)接收到最新的配置,並通知到應用程式。
-
版本釋出管理
- 所有的配置釋出都有版本概念,從而可以方便的支援配置的回滾。
-
灰度釋出
- 支援配置的灰度釋出,比如點了釋出後,只對部分應用例項生效,等觀察一段時間沒問題後再推給所有應用例項。
-
許可權管理、釋出稽核、操作審計
- 應用和配置的管理都有完善的許可權管理機制,對配置的管理還分為了編輯和釋出兩個環節,從而減少人為的錯誤。
- 所有的操作都有審計日誌,可以方便的追蹤問題。
-
客戶端配置資訊監控
- 可以方便的看到配置在被哪些例項使用
-
提供Java和.Net原生客戶端
- 提供了Java和.Net的原生客戶端,方便應用整合
- 支援Spring Placeholder,Annotation和Spring Boot的ConfigurationProperties,方便應用使用(需要Spring 3.1.1+)
- 同時提供了Http介面,非Java和.Net應用也可以方便的使用
-
提供開放平臺API
- Apollo自身提供了比較完善的統一配置管理介面,支援多環境、多資料中心配置管理、許可權、流程治理等特性。
- 不過Apollo出於通用性考慮,對配置的修改不會做過多限制,只要符合基本的格式就能夠儲存。
- 在我們的調研中發現,對於有些使用方,它們的配置可能會有比較複雜的格式,如xml, json,需要對格式做校驗。
- 還有一些使用方如DAL,不僅有特定的格式,而且對輸入的值也需要進行校驗後方可儲存,如檢查資料庫、使用者名稱和密碼是否匹配。
- 對於這類應用,Apollo支援應用方通過開放介面在Apollo進行配置的修改和釋出,並且具備完善的授權和許可權控制
-
部署簡單
- 配置中心作為基礎服務,可用性要求非常高,這就要求Apollo對外部依賴儘可能地少
- 目前唯一的外部依賴是MySQL,所以部署非常簡單,只要安裝好Java和MySQL就可以讓Apollo跑起來
- Apollo還提供了打包指令碼,一鍵就可以生成所有需要的安裝包,並且支援自定義執行時引數
Gitee地址:https://gitee.com/lepdou/apollo
基於.NetCore開發的輕量級(相對Apollo而言)配置中心,部署簡單、配置簡單,使用簡單,可以根據個人或者公司需求採用。
- 部署簡答,最少只需要一個資料節點,支援docker部署
- 支援多節點分散式部署來保證高可用
- 配置支援按照應用隔離,應用內配置支援分組隔離
- 使用長連結技術,配置資訊實時推送到客戶端
- 支援IConfiguration、IOptions模式讀取配置,原程式幾乎不用改造
- 配置修改支援版本記錄,隨時回滾配置
- 所有所有節點都故障,客戶端支援從本地快取讀取配置
配置完成後即可進入系統
GitHub地址:https://github.com/kklldog/AgileConfig
GitHub中文文件:https://github.com/kklldog/AgileConfig/blob/master/README_CN.md
開發作者的文章:https://www.cnblogs.com/kklldog/p/agile-config.html
參考部落格:https://mp.weixin.qq.com/s/Cah7GgpkDa5XJxfLM_7Z8A
蒐集.neter開發常用的功能,執行環境:.net4.7;.netstandard2.0;net5.0;
功能列表
-
通用資料模型
-
樹狀結構&平鋪資料的訪問
-
序列化
-
登錄檔
-
編碼和加解密
-
分散式id&分散式流水號
-
校驗框架
-
壓縮&解壓縮
-
驗證碼生成
-
漢字轉拼音
-
Dto和Entity轉換之Mapper擴充套件
-
遞迴篡改物件的屬性值之Modify擴充套件
-
將Dto屬性投影到Entity之ModifyByDto擴充套件
-
不同資料型別間的轉換之To方法
-
隨機數
-
物件池
-
基於記憶體的併發訊息佇列
-
反射工具
-
主機診斷報告
-
物件深度比對工具
-
網路幫助類
-
單位轉換器(B/KB/MS/GB)
-
金額大小寫轉換
-
列舉型別擴充套件方法
-
常用擴充套件方法
開源地址:https://gitee.com/jackletter/DotNetCommon/wikis/
Files 是一個用C#開發的檔案管理器,它利用了 Windows 平臺的最新功能,包括 Fluent Design、無縫更新和 API,可實現使用者期望的效能和生命週期行為。無論您是想簡化您的檔案體驗還是嘗試新事物,Files 都是一個一站式解決方案,可幫助您快速瀏覽檔案。
Files 的願景是使其成為最好的檔案管理器,同時保持簡單易用。
特點
- Fluent Design
- 多選項卡模式
- 支援7zip
- 支援快速檢視
可以從以下兩個地方下載:
微軟應用商店:https://www.microsoft.com/store/apps/9NGHP3DX8HDX
開源地址:https://github.com/files-community/Files
如果在內網部署一個網站或應用,也只有處於內網之中的其他網路裝置才能訪問;但如果你想讓公網上任何人都可以訪問你的內網應用,則必須要採取一些手段,內網穿透在這種背景下應用而生。
FastTunnel是用 .NET Core 開發的一款跨平臺內網穿透工具,它可以實現將內網服務暴露到公網供自己或任何人訪問。
- FastTunnel是一款高效能跨平臺內網穿透工具,使用它可以實現將內網服務暴露到公網供自己或任何人訪問。
- 與其他穿透工具不同的是,FastTunnel 專案致力於打造一個易於擴充套件、易於維護的內網穿透框架。
- 你可以通過引用 FastTunnel.Core 的 nuget 包構建出自己的穿透應用,並針自己所需的業務擴充套件功能。
FastTunnel榮獲開源中國2020最有價值開源專案。
FastTunnel應用場景
- 家中建站
- 微信開發
- 遠端桌面
- ERP互通
- SVN程式碼倉庫
- 埠轉發
- IOT物聯網
- 其他場景
官網:https://suidao.io
Gitee:https://gitee.com/Hgui/FastTunnel
GitHub::https://github.com/SpringHgui/FastTunnel
參考文獻:
- https://mp.weixin.qq.com/s/sBAYvBqg8aZcAi70_BRFAw