扫一扫
关注 HG 公众号
发现更多开源乐趣

C# 项目

兴趣是最好的老师,HelloGitHub 就是帮你找到编程的兴趣。

excel2json

第 49 期 Star 909 Watch 64 Fork 302 中文
C# 写的把 Excel 表转换成 json 的工具
excel2json

Notepads

第 49 期 Star 3.2k Watch 74 Fork 223
一款基于 C# 开发的 UWP 文本编辑器。该记事本应用是由一位国人开发,采用了 Fluent Design。轻便、美观,打开速度飞快,支持 Markdown 预览、文件更改前后对比和多标签页。它没有 VS Code 或是 Sublime 那么强,但是完全可以代替 Windows 系统自带的笔记本应用
Notepads

Blog.Core

第 45 期 Star 2.5k Watch 140 Fork 775 中文
基于 ASP.NET Core 和 Vue 从零开始搭建前后端分离项目教程+实战项目。该项目从 .NET Core 基础讲起,内容完整、系统,对初学者和有一定基础的小伙伴都有借鉴和学习的价值
Blog.Core

gui.cs

第 45 期 Star 4.5k Watch 140 Fork 349
支持 Windows 和 Linux/Unix 的 .NET 终端 UI 工具库。方便实现终端 GUI 工具,并且可以实现终端中用鼠标啦
gui.cs

BenchmarkDotNet

第 43 期 Star 5.9k Watch 268 Fork 622
功能强大的用于基准测试 .NET 库
BenchmarkDotNet

csredis

第 41 期 Star 1.5k Watch 88 Fork 314 中文
Redis.io 官方推荐的 C# 语言 redis 客户端库,支持 redis 2.8-5.0 版本的所有命令,且包含哨兵、集群等功能。该项目从 2016 年开始持续迭代更新,实现了低门槛、高性能和分区等高级玩法。该项目作者:2881099,在 GitHub 上开源了很多有趣、实用的 C# 项目。欢迎大家关注他,同时参与到他的项目中,为开源社区贡献自己的一份力量。示例代码:

var csredis = new CSRedis.CSRedisClient("127.0.0.1:6379,password=123");
RedisHelper.Initialization(csredis);

RedisHelper.Set("test1", "123123", 60);
RedisHelper.Get("test1");
//...函数名与 redis-cli 的命令相同

//普通订阅
RedisHelper.Subscribe(
  ("chan1", msg => Console.WriteLine(msg.Body)),
  ("chan2", msg => Console.WriteLine(msg.Body)));

//管道操作
RedisHelper.StartPipe().Set("a", "1").Get("a").EndPipe();

FightLandlord

第 40 期 Star 414 Watch 20 Fork 111 中文
该项目采用 .NETCore 跨平台技术,实现斗地主服务端。已实现功能:洗牌、发牌、抢地主、斗地主、提示出牌、游戏结束等。后续计划增加机器智能出牌,我是不是应该说:star 过 xx 实现智能出牌功能,才能让大家有动力 star 😂
FightLandlord

Common.Utility

第 40 期 Star 3.7k Watch 313 Fork 1.7k 中文
项目作者日常工作总结和网上收集、整理的 C# 各式各样的功能类库。类与类之间没有联系,可以单独引用至项目。代码中包含注释,便于使用和学习

FreeSql

第 39 期 Star 2.3k Watch 131 Fork 472 中文
一个功能强大的 C# 对象关系映射程序(ORM),支持 .NETCore 2.1+、.NETFramework 4.5+ 开发模式下,开箱即用,可繁可简的使用方式。支持 CodeFirst 迁移、丰富的表达式函数、支持多种数据库、大量采用 ExpressionTree 技术提升性能等功能。示例代码:

var t0 = fsql.Select<Tag>()
    .Where(a => a.Parent.Parent.Name == "粤语")
    .IncludeMany(a => a.Tags, then => then.Where(sub => sub.Name == "xxx"))
    .ToList();

var t3 = fsql.Select<Xxx>()
    .Where(a => a.IsDelete == 0)
    .WhereIf(keyword != null, a => a.UserName.Contains(keyword))
    .WhereIf(role_id > 0, a => a.RoleId == role_id)
    .Where(a => a.Nodes.AsSelect().Any(t => t.Parent.Id == t.UserId))
    .Count(out var total)
    .Page(page, size)
    .OrderByDescending(a => a.Id)
    .ToList()

RemoteDesktopManage

第 37 期 Star 437 Watch 30 Fork 129 中文
基于 MSTSC 连接 Windows 远程桌面,并对其进行封装实现管理多个远程桌面配置的小工具。更加方便地管理多个远程桌面,实现同时远程、互相切换。相当于把多个 MSTSC 集合在一个软件里,并进行分组打标试用
RemoteDesktopManage