Git Product home page Git Product logo

home's Introduction

 

English | 中文

.NET Core Community Home

.NET Core Community (referred to as NCC) is an unofficial, non-profit open source community based on the .NET technology stack. It was established in mid-2016 by a group of young people in conjunction with nearly 100 .NET developers. We hope that through our efforts, we can make the .NET ecosystem more exciting.

The History of NCC

NCC was founded in mid-2016, the original name is ".NET Core China Studying Group". At the same time, we created a QQ Group called "dotNET Core Studying Group".

The original goal of NCC was to translate the documentation of Microsoft ASP.NET Core. We have received a lot of help and encouragement from many people (List of contributors for 2016 translation project). And the works of our translation also provided great convenient for the first Chinese developers who learned ASP.NET Core.

After two years of challenge, after several name adjustments, NCC became an open source community organization with more than one dozen projects and multiple sub-teams.

We have received support from many people, including the sponsorship of JetBrains.

At the beginning of 2019, we tried to cooperate with various local .NET technology communities in China and jointly launched the .NET China Community Joint Meeting (NCJM), and provided the community with the NCC domain name asset 'dotnet-china.com'. We enabled the new domain name 'dotnetcore.xyz' instead.

At the end of 2019, we adopted and launched MEMBER CODE OF CONDUCT. The four new rules and regulations revised and drafted by the community Revision and Drafting Working Group (2019) passed the NCC PMC vote, and in Effective from January 1, 2020.

In 2020, a special year, we have updated the community rules and withstood multiple huge challenges. Member projects have made great progress. Surging has completed the incubation of NCC for a broader prospect and established an independent community. FlubuCore became the first .NET Foundation member project in our community. NCC Alipay SDK completed its historical mission and was archived.

Since 2020, our community has been under attack and defamed by certain extremist technologists and a few self-serving authors of open-source projects. However, NCC has received support from the majority of the technical community and a vast number of developers who have the wisdom and talent to discern the truth. They are the backbone of .NET.

In the years 2023-2024, we will make a magnificent transformation and continue to explore a new future.

We will bring more surprises and achievements to everyone in 2024.

Members' Code of Conduct

In order to build an open, innovative, inclusive and welcoming community, we have published the Code of Conduct for Members.

(It has been updated.)

Repos and Projects

Our project is divided into two phases: the NCC Sandbox Projects phase and the NCC Top-Level Projects phase. When a new project is applied to join NCC and successfully pass the review and complete the preparatory work before joining, the project will automatically enter the NCC Sandbox Projects phase. If you want to apply to join NCC, please read the How to join us section.

Data

  • CanalSharp, An open source .net client for Alibaba Canal. Alibaba Canal is an incremental publish & subscription component based on MySql's binlog. For more detail please visit https://github.com/alibaba/canal/wiki.
  • DotnetSpider (Top-Level), a .NET Standard web crawling library similar to WebMagic and Scrapy. It is a lightweight ,efficient and fast high-level web crawling & scraping framework for .NET.
  • EasyCaching, an open source caching library that contains basic usage and some advanced usages of caching which can help us to handle caching more easier.
  • EntityFrameworkCore.GaussDB (incubation), an Entity Framework Core provider for GaussDB.
  • EntityFrameworkCore.KingbaseES (incubation), an Entity Framework Core provider for KingbaseES.
  • FreeSql, is the ORM in .NET Core, .NET Framework and Xamarin. It supports MySQL, PostgreSQL, SqlServer, Oracle, Sqlite, Firebird, ODBC, 达梦, 瀚高, KingbaseES, 神通, HUAWEI GaussDB and Microsoft Access.
  • GaussDB Driver for .NET, NET Core driver for GaussDB. It is also the basis for the GaussDB Provider for EntityFramework Core.
  • Magicodes Exporter&Importer, a common import and export library for Excel, Word, PDF and HTML.
  • NPOI (Archived with announcement), a .net library for reading and writing MsOffice binary and OOXML file formats.
  • SmartCode, an excellent open source code generator (of cause not only a generates code). It's based on execution flow, supports ETL mode, highly flexible and scalable, also supports custom templates and multiple template styles, and multiple databases.
  • SmartSql, SmartSql provides a progressive development experience with simple connection string configuration to run, XML configuration to decouple SQL and a variety of performance observation methods to make performance problems clear at a glance. SmartSql maintains the same level of performance as Dapper and provides a number of features: dynamic proxy storage/distributed cache/type processor/automatic generation of CUD code/distributed Id generator/performance diagnosis/AOP level of things/caches (memory, distributed cache)/read/write separation/code generator/high performance batch insertion, etc.
  • ShardingCore, a high performance lightweight solution for efcore sharding table and sharding database support read-write-separation.

Application Library

  • AspectCore (Top-Level), an AOP-based cross platform framework for .NET Standard.
  • Natasha, simplify IL operations, optimize the IL programming flow, and write dynamic caches that provide high performance.
  • NCC Collection Extensions, Utilities and extensions for Collections includes Collections.Paginable and so on...
  • WebApiClient, an open source project based on the HttpClient. You only need to define the c# interface and modify the related features to invoke the client library of the remote http interface asynchronously.

Development Framework

  • OSharp, is a rapid development framework based on .NET Core with the latest .NET Core SDK LTS version (currently .NET Core 3.1). The OSharp framework highly automates the following modules of ASP.NET Core: configuration, dependency injection, Logging, caching, entity framework, MVC / WebAPI, identity authentication, permission authorization, etc. OSharp also standardizes a set of business implementation code and operation processes, making the .NET Core framework easier to apply to the development of actual projects.
  • Util, an open source application framework under the .NET Core platform, designed to improve the development efficiency of small teams. It is composed of common helpers, hierarchical architecture design, UI components, third-party component and service interface packages.
  • WTM, a development tool for small and medium-sized back-end management systems. Implement zero-code creation project, zero-code generation management module.

Environment & Tools

  • Alipay SDK (Archived), a third-party Alipay server SDK, based on .NET Standard 2.0 development, provides a more reliable design than the official, but remains consistent with the official APIs.
  • FastGithub (Archived),a GitHub accelerator. Used to solve the problems of GitHub unable to open, unable to load user avatar, unable to upload and download releases, git-clone git-pull git-push failure, etc.
  • FlubuCore (Top-Level), a cross platform build and deployment automation system for building projects and executing deployment scripts using C# code.(Example for FlubuCore)
  • KoobooJson (external), smaller and faster C# JSON serialization tool (construction based on expression tree)
  • NCC Compile Environment, When using the Roslyn library for dynamic compilation, you can introduce the library to provide a dynamic compilation environment.

Infra & Middleware

  • AgileConfig, a lightweight configuration center based on .net core . It is easy to deploy , easy to learn , easy to use.
    • AgileConfig Client - an AgileConfig client based on .NET Standard 2.0, can be run on nfx and core.
  • CAP (Top-Level), a distributed transaction solution in microservice based on eventually consistency, also an eventbus with Outbox pattern.
  • HttpReports, a lightweight APM system based on .NET Core, can be used to quickly build an integrated site of statistics, analysis, charts, monitoring, and distributed tracking in the .NET Core environment. HttpReports applies to ASP.NET Core MVC/WebAPI, is simple to get started and suitable for use in microservice architecture.
  • Mocha (incubation), an application performance monitor tools based on OpenTelemetry, which also provides a scalable platform for observability data analysis and storage.

UI Components

  • BootstrapBlazor, a set of enterprise-class UI components based on Bootstrap and Blazor.

Labs

Laboratory projects will not be included in the members' project directory.

  • BTFindTree (Labs), this project provides efficient data structures for the NCaller project, optimizing search performance using a combination of binary search and bucketing.
  • Papper (Labs), based on Roslyn, it is a wrapper for the syntax tree, making it easier for developers to manipulate the syntax tree.

Translation

Translation projects will not be included in the members' project directory.

Projects that Complete the Incubation Work

BotSharp, SurgingZKWeb

Do you want to be a part of us? The next great NCC project, will be yours. The next section will tell you how to join us.

How to Join Us

Fund management

NCC accepts donations from communities and individuals. All donations will be made public through the Statement-of-Income-and-Expense.md and subject to community supervision.

Donation

When you donate, PLEASE TELL US YOUR NAME AND TO MARK "NCC", thank you.

当你捐赠时,请标注「NCC」,并留下你的名字,万分感激。

All donations will be managed by LIU Haoyang and booked by Alex Lewis.

Thank you for your donation.

Commercial and Political Exclusions

Community Partners and Sponsors

              

WeChat Official Public Account

In 2019, I went out and created the NCC community WeChat public account "OpenNCC". Welcome to subscribe us.

The advertising income in the NCC WeChat public account will be used for the daily operation of the public account, community activities and payment of manuscripts.

Feedback

  • If you having any trouble about NCC Member Projects, please go to the repository of that project and create a new issue.
  • If you having some questions about NCC, you may create an issue for us.
  • The following methods are acceptable:
    • Leave a message in the background of our WeChat account: OpenNCC;
    • Follow us on Twitter: @ncc_community
    • Follow our Telegram Channel: @ncc_radio
    • Join our Reddit Community: r/TheNCC
  • Finally, you can contact us via email: contact#ncc.work (change # to @).

home's People

Contributors

2881099 avatar alexinea avatar liuhaoyang avatar lyricsyo avatar utilcore avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

home's Issues

Memo for the use of the JetBrains open source project licenses

Memo for the use of the JetBrains open source project licenses
关于公开 NCC 的 JetBrains 开源项目许可的使用状况的备忘

Discussion: https://gitter.im/dotnetcore/community
If you have a good idea, please reply to this issue. It is recommended to reply in English.

讨论请移步 https://gitter.im/dotnetcore/community
建议请回复本 issue,建议使用英语回复


NCC organization has received some open source project license sponsorship from JetBrains
NCC 组织获得了一些 JetBrains 公司的开源项目许可证赞助

Based on the principle of openness and transparency, I propose to publicize the use of the license.
基于公开透明的原则,我提议对许可证的使用状况进行公示

The information includes: the number of licenses obtained for member projects, and the individual who obtained the license.
公示的信息包括:成员项目获得的许可证数量、获得许可证的个人

Public information does not include the following:

  • Total number of licenses obtained by NCC
  • Licenses purchased by developers themselves
  • Open source project license for the development team to apply for itself

公示信息不包含以下内容:

  • NCC 获得的授权许可的总数
  • 开发者自己购买的授权许可
  • 开发团队自行申请的开源项目授权许可

If you have comments or suggestions about this issue, you can send feedback via gitter, NCC WeChat MpAccount, NCC WeChat group, NCC QQ group or directly reply to this issue.

如果你对本 issue 有意见或建议,可以通过 gitter、NCC 公众号、NCC 微信群、NCC QQ 群或直接回复本 issue 进行反馈。

silky微服务框架申请加入NCC

Basic

Project Name:

  • silky微服务框架

Project Address on GitHub (and other addresses, such as Gitee or GitLab):

Project Description:

  • lms是一个旨在通过.net平台快速构建微服务开发的框架。具有稳定、安全、高性能、易扩展、使用方便的特点。lms内部通过dotnetty实现高性能的rpc通信,使用zookeeper作为服务注册中心。RPC通信支持随机轮询、哈希一致性、随机路由等负载均衡算法。

Document, Blog or Wiki address:

Author:

liuhll

Development team or main contributors:

liuhll

License:

MIT

Additional information

  • 1 - The project is based on .NET technology.
  • 2 - The project has a clear git commit log.
  • 3 - Unit tests with considerable coverage
  • 4 - The project has benchmarking information (for infrastructure projects, this paragraph should be met)
  • 5 - The project creation time should be at least three natural months from the application time
  • 6 - The core developers of the project team should make effective contributions to the project within one natural month from the application time
  • 7 - Project should be hosted on GitHub first
  • 8 - The number of stars in the project is not less than 100
  • 9 - Project should have more complete information:
    • §9.1 - README (, with internationalization is better)
    • §9.2 - Documentation or Wiki
    • §9.3 - Sample code
    • §9.4 - Roadmap
    • §9.5 - Other options: website, blog, manual, tutorial or publication
  • 10 - The project should have more reliable technical support and response capabilities:
    • §10.1 - More effective issue response
    • §10.2 - Other options: communities, mail groups, groups and other social media channels, etc.
  • 11 - The project has a clear development plan and roadmap
  • 12 - The project has not received sponsorship from commercial companies or organizations, and no company has paid for the project
  • 13 - The project has no copyright issues and meets the copyright requirements in the "Community Project Copyright and Open Source License Regulations";

ShardingCore 申请加入NCC

ShardingCore 申请加入NCC。
ShardingCore 一款ef-core下高性能、轻量级针对分表分库读写分离的解决方案,具有零依赖、零学习成本、零业务代码入侵。

该库的特点:

  • 支持efcore2、3、5、6版本
  • 针对efcore支持分表、分库、读写分离等功能
  • 具有零依赖、零学习成本、零业务代码入侵
  • 支持所有以efcore作为数据驱动的框架如:AbpVNext
  • 使用流式聚合保证高性能和轻量级,性能表现为:O(n)
  • 支持同库下多表join,目前支持分表和分表,分表和不分表,支持group 聚合函数
  • 支持所有efcore对应版本支持的数据库
  • 提供默认分片路由和手动路由,支持自定义业务路由和自定义动态分表
  • 支持code-first
  • 提供按时间分表(顺序分表)的O(1)性能分页
  • 支持efcore生态下的所有批量插件

项目主页:https://github.com/xuejmnet/sharding-core
文档:https://xuejmnet.github.io/sharding-core-doc/
作者:薛家明
开源协议:Apache-2.0

Additional information

  • 1 - The project is based on .NET technology.
  • 2 - The project has a clear git commit log.
  • 3 - Unit tests with considerable coverage
  • 4 - The project has benchmarking information (for infrastructure projects, this paragraph should be met)
  • 5 - The project creation time should be at least three natural months from the application time
  • 6 - The core developers of the project team should make effective contributions to the project within one natural month from the application time
  • 7 - Project should be hosted on GitHub first
  • 8 - The number of stars in the project is not less than 100
  • 9 - Project should have more complete information:
    • §9.1 - README (, with internationalization is better)
    • §9.2 - Documentation or Wiki
    • §9.3 - Sample code
    • §9.4 - Roadmap
    • §9.5 - Other options: website, blog, manual, tutorial or publication
  • 10 - The project should have more reliable technical support and response capabilities:
    • §10.1 - More effective issue response
    • §10.2 - Other options: communities, mail groups, groups and other social media channels, etc.
  • 11 - The project has a clear development plan and roadmap
  • 12 - The project has not received sponsorship from commercial companies or organizations, and no company has paid for the project
  • 13 - The project has no copyright issues and meets the copyright requirements in the "Community Project Copyright and Open Source License Regulations";

除开源项目之外,是否也可以讨论出一些规范?

这里只是举些例子:

例1: 常用Api接口的返回格式,

{
     code : 0,( 状态码)
     data : {}, (数据)
     warning:string,(警告建议)
     description:string,(描述)
     /*时间戳、分页信息等等...........*/
}

例2:企业状态码规范
Long - > 18位 每一/几位代表什么。

组内优秀的人越来越多,且各位见多识广,汇大家之所学,集大家之所想,打造一些行业规范。

2020年 DOTNETCORE.XYZ 域名续费费用通告

NCC官方域名 dotnetcore.xyz 域名目前即将到期,需要进行下一年的续费。

拟计划使用 NCC 捐赠费用进行续费,现在进行公示及讨论。

域名提供商:GoDaddy
续费周期:1年 2020/03/05-2021/03/05
费用:RMB 106.41

MSTestEnhancer 申请加入 NCC

MSTestEnhancer 是一个单元测试框架,用于解决程序员写单元测试的命名问题

我的团队大多数的小伙伴的英文水平都比较低,如果遵守单元测试的命名规范写,那么写出来的单元测试的方法名他自己都读不懂。在鼓励小伙伴写单元测试的时候,就做了 MSTestEnhancer 通过中文分割单元测试

可以写出下面的代码

[TestClass]

public class DemoTest
{
    [ContractTestCase]
    public void Foo()
    {
        "当满足 A 条件时,应该发生 A' 事。".Test(() =>
        {
            // Arrange
            // Action
            // Assert
        });
        
        "当满足 B 条件时,应该发生 B' 事。".Test(() =>
        {
            // Arrange
            // Action
            // Assert
        });
    }
}

运行单元测试可以看到下图

项目地址:https://github.com/dotnet-campus/MSTestEnhancer

WTM框架申请加入NCC

无意中看到这个组织,提交一个试试。 https://github.com/WalkingTec/WalkingTec.Mvvm

WTM框架介绍
WalkingTec.Mvvm框架(简称WTM)最早开发与2013年,基于Asp.net MVC3 和 最早的Entity Framework, 当初主要是为了解决公司内部开发效率低,代码风格不统一的问题。经历了四年间数十个项目的考验,框架逐步的完善,推出了四个主要版本。 2017年9月,我们将代码移植到了.Net Core上,并进行了深度优化和重构,推出了基于Asp.net Core和EF Core的全新框架,新框架在架构,稳定性,速度上都有长足进步,真正成为一款高效开发的利器。

框架文档地址:http://wtmdoc.walkingtec.cn

由于我们公司的业务关系,WTM框架在联想,中外运,滴滴,每日优鲜等大企业的中小型项目中都有使用,至少有50个成功项目经验

FastGithub加入NCC的申请

名称

FastGithub

###描述
github加速神器

加入事由

FastGithub在遵循我国法律的提前下,可以从本质上加速github所有相关域名,让开发者丝滑地使用github所有功能。但本人精力有限,希望捐献给社区一起来发扬光大,为开发者造福。

项目官档

https://github.com/xljiulang/FastGithub

文档或 Wiki 地址

作者及核心贡献者信息

老九:WebApiClient作者

许可证情况

https://github.com/xljiulang/FastGithub/blob/master/LICENSE

其它情况说明

单元测试

目前缺失,也没有想到很好的办法进行测试,后期可以考虑对一些关键函数进行单元测试。

Announcement: FlubuCore upgraded to "NCC Top-Level Project"

We are very pleased to announce that after review and discussion, NCC FlubuCore has been officially upgraded to "NCC Top-Level Project".

@mzorec , the leader of the FlubuCore team, has always maintained the youthful vitality of FlubuCore. In the past year, he helped multiple NCC teams integrate FlubuCore and contributed silently to the NCC open source community.

FlubuCore is the first open source project outside of China in the NCC community. Congratulations to @mzorec , at this moment you are a hero. In a sense, FlubuCore is the first member project to become a top-level project according to the process. So this also provides experience for the growth of the organization.

We look forward to the NCC community providing vitality and energy to the world of .NET/.NET Core technology stack. Especially in mainland China, where almost monopolized by the Java technology stack, a fertile ground for the .NET technology stack can be developed.

FlubuCore is an option worth trying, I believe everyone who will use it will love it. If you are interested in this, you can visit the FlubuCore project: https://github.com/dotnetcore/FlubuCore .

推荐潜力项目 KoobooJson 进入NCC

https://github.com/Kooboo/Json

此项目为高性能Json序列化项目:

1、入组条件基本符合
2、项目类型处理完整,考虑的比较充分
3、有较完整的UT测试
4、优化效果明显,算法值得回味,跑分靠前
5、中英文readme齐全
6、星数超过半百

个人感觉前景较好,推荐进入NCC内孵化,请各位审查。

CanalSharp 申请加入NCC

仓库地址:https://github.com/CanalClient/CanalSharp

CanalSharp 是mysql数据库binlog的增量订阅&消费组件 Canal (阿里巴巴开源项目)的 .NET 客户端。其解决的痛点是,无需使用Java语言去开发应用程序和Canal做对接。

目前正在开发基于事件订阅的使用方式,且使用 DotNetty 进行重构。(dev-DotNetty 分支

暂定接下来目标:高可用支持(支持Canal集群及CanalSharp主备)、常见的应用场景封装:Redis、Kafka、ElasticSearch等

该项目由我和XiaoFu发起并维护。

NCaller 申请加入NCC

高性能动态调用库 NCaller


  • 项目背景:

    此项目基于NCC - Natasha项目为动态调用提供高性能操作,随着core框架结构的升级,dynamic和emit都已经接近原生性能,但dynamic对于静态类,动态生成的静态类,动态生成的动态类的调用均有不完善之处。在此背景下,本人延用Natasha,在保证丰富操作的同时,对动态结构做了大量优化,使之耗时达到原生与dynamic之间,据不完全统计,NCaller的耗时仅是原生的2-3倍。



  • 项目简介:

    此项目为Natasha的衍生项目,通过运行时自动构建高性能操作代理类,为普通类,静态类,动态类,动态类中的动态类,动态生成的静态类等提供了良好的、完备的、高性能的操作,如果反射、dynamic都不能满足高端的需求,可使用本类库,它将是一个不错的选择, 项目地址:https://github.com/night-moon-studio/NCaller


  • 项目信息:

    • MIT协议
    • 测试覆盖率检测
    • 持续构建
    • 英文文档
    • 详细Wiki
    • OnlineChart


  • 后期规划:

    因为本库关注点是操作与性能,后期会持续关注用户反馈,并在新版benchmark出来时,对NCaller做更精细的基准测试。

The NCC Community Member Plan

We plan to launch the NCC Community Member program in January next year (2021).

Let more people join the NCC, promote community projects, participate in community governance, and develop the NCC community together.

If you want to join NCC, please send an email to dotnet-community#outlook.com (change # to @), you can make a very brief self-introduction and leave your github id.

Waiting for your good news.

HttpReports 申请加入NCC

HttpReports 是针对.Net Core 开发的轻量级APM系统,基于MIT开源协议, 使用HttpReports可以快速搭建.Net Core环境下统计,分析,图表,监控,分布式追踪一体化的站点, 适应.Net Core WebAPI,MVC,Web项目, 通过引用Nuget构建Dashboard面板,上手简单,适合在微服务架构中使用。

Github地址:https://github.com/SpringLeee/HttpReports

在线预览: https://moa.hengyinfs.com

账号: admin 密码 123456

ScheduleMaster申请加入NCC

ScheduleMaster是一款基于.NET Core平台开发的分布式任务调度系统,专门为现代化部署而生,充分利用.NET Core的优势实现容器友好和云原生。它支持丰富的调度类型、灵活可控的系统参数、简易的UI操作、支持多节点高可用、业务API集成等等特性,同时支持多样化的部署方式,非常容易上手。

FreeRedis 申请加入 NCC

FreeRedis 是作者根据多年积累的开发与维护 CSRedisCore 的经验,并在此基础上独立开发的新 .NET Redis 客户端,该库为开发人员提供了简单高效的 API 操作。

该项目具有明确的提交记录,并且会关联相关的 issue。
目前项目中有273个单元测试,针对不同存储类型,集群模式,发送、接受等,单机测试覆盖率达80%。到发帖时间,我们正在接受关于 CI 的 PR,改造单元测试运行的环境(将其托管给CI)。
对比其他同类型的类库,该库性能和使用方法可以被主流开发者所接受。我们的实验版本的性能会有所提升,数据不便公开。
作者在11月持续提交维护代码,贡献者提交大量实验代码,该库截至到12月28日满3个月。
我们一直快速且有效的响应 issue。
该项目未收到过企业赞助。

该库支持:

  • .NET Core 2.1+ 和 NET Framework 4.0+;
  • Redis-Server 2.8 以上版本;
  • RESP1/2/3 协议;
  • 主从模式;
  • 支持哨兵模式;
  • Lua脚本;
  • 发布订阅;
  • 服务管道;

在正式版维护的同时,贡献者们还在不同的方向改进着该库。

未来计划:

  1. 进一步解耦代码
  2. 优化通信传输模块
  3. 优化协议解析模块
  4. 完善多人协作开发流程
  5. 搭建所需的 CI 环境
  6. UT测试报告及覆盖率展示
  7. 细化并补充单元测试
  8. 美化精简文档展示
  9. 性能测试机器人

当前我们在 ISSUE 中呈现了部分重要的计划,以便贡献者们跟踪和参与。

项目主页:https://github.com/2881099/FreeRedis
文 档:https://github.com/2881099/FreeRedis
作 者:老叶
开源协议:MIT

--------------- 请根据加入要求填写以下项 ---------------------------------

  • 1、项目基于.NET 技术(包括且不仅限于 .NET Standard 与 .NET Core);
  • 2、项目具有明确的提交记录(git commit log);
  • 3、项目具有相当覆盖率的单元测试;
  • 4、项目具有一定的跑分数据;对于基础设施类项目,本款应满足;
  • 5、项目创建时间距推荐时间应至少三个自然月;
  • 6、项目团队核心开发者应在距申请时间一个自然月内对项目作有效贡献;
  • 7、项目官档优先托管于 GitHub;
  • 8、项目官档的星数不少于 100 颗;
  • 9、项目应具备较完整的资料:
    • 9.1)README,具有国际化的 README 更佳
    • 9.2)文档或 Wiki
    • 9.3)示例代码
    • 9.4)项目发展路线图(Roadmap)
    • 9.5)其它可选项:网站、博客、手册、教程或出版物
  • 10、项目应该具备较可靠的技术支持与响应能力:
    • 10.1)较有效的 issue 响应
    • 10.2)其它可选项:社区、邮件组、群组及其它社交媒体渠道等
  • 11、项目具有较明确的发展规划和路线图(Roadmap)
  • 12、项目未接受过商业公司或组织的赞助,也未有企业为项目支付费用
    • 12.1)企业开发的开源项目例外
    • 12.2)具有收费版本的开源项目的,其免费版本例外
    • 12.3)项目团队向第三方提供与该项目相关的有偿咨询类服务的例外
  • 13、项目无版权问题,并满足「社区项目版权与开源许可证规定」中有关版权的规定;
  • 14、项目应使用开源软件许可证,并满足「社区项目版权与开源许可证规定」中有关开源许可证的规定

OpenAuth.Core申请加入NCC

名称:OpenAuth.Core
描述:OpenAuth.Core是一套基于.Net Core快速应用开发框架,最新版采用.net core sdk 3.1.100。核心功能为权限管理、工作流功能开发。其中:

  • 权限管理已实现:模块权限、菜单权限、数据权限;
  • 工作流已实现:普通审批、会签、条件分支;

技术方面,主要涉及AutoFac、Swagger、IdentityServer 4、EF、LayUI、vue等
项目地址:

文档或 Wiki 地址:http://doc.openauth.me/
官方网站地址:http://openauth.me/
作者及核心贡献者信息:@yubaolee
许可证情况:LGPL


Alex Lewis 补充 (2020-04-13)

  • 根据「关于申请加入 NCC 的项目的规定(2019)」,项目的许可证调整为 Apache 2.0 License
  • 根据「社区商业阻隔条例(2019)」,项目 README 已移除非社区版本的说明信息

2023-2024年 DOTNETCORE.XYZ 域名续费费用通告

NCC官方域名 dotnetcore.xyz 域名目前即将到期,需要进行下年的续费。

拟计划使用 NCC 捐赠费用进行续费,现在进行公示及讨论。

域名提供商:GoDaddy
续费周期:2年 2023/03/05-2025/03/05
费用:RMB 258.00

2021-2022年 DOTNETCORE.XYZ 域名续费费用通告

NCC官方域名 dotnetcore.xyz 域名目前即将到期,需要进行下年的续费。

拟计划使用 NCC 捐赠费用进行续费,现在进行公示及讨论。

域名提供商:GoDaddy
续费周期:2年 2021/03/05-2023/03/05
费用:RMB 197.61

Memo of NCC's internationalization

Memo of NCC's internationalization
关于 NCC 推进国际化的备忘

Discussion: https://gitter.im/dotnetcore/community
If you have a good idea, please reply to this issue. It is recommended to reply in English.

讨论请移步 https://gitter.im/dotnetcore/community
建议请回复本 issue,建议使用英语回复


Suggestion of the Internationalization of the Project
项目的国际化的建议


English version of the readme file (optional: keep the Chinese version at the same time).
英文版的自述文件(可选地,可以同时保持一份中文自述文件)


English version of the document.
英文版的文档


Commit log in English when submitting code.
使用英语提交代码


Submit and reply to the issue in English (or at least includes English translation)
使用英语(或至少包含一份英语翻译)提交、回复 issue


Promote through foreign media platforms
通过国外媒体平台进行推广


Reddit https://www.reddit.com/r/dotnet/ has many subscribers but outside of GFW
Reddit https://www.reddit.com/r/dotnet/ 拥有众多订阅者,但在 GFW 之外,需要梯子


@mzorec 's suggestion
@mzorec 先生的建议


Difficulties at this stage
现阶段的困难


There is not enough manpower and resources to ensure the English translation and timely update of the readme files and documents.
没有足够的人力物力确保自述文件和文档的英文版翻译与及时更新


Insufficient experience in publicity through foreign media.
通过国外媒体进行宣传的经验不足


Support needed
需要的支持


Finding contributors from the developer community who are willing to translate readme files and documents for NCC (both from Chinese to English and from English to Chinese).
从开发者社区中寻找愿意为NCC翻译自述文件和文档(从中文到英文,以及从英文到中文)的贡献者

If you are willing to help with the internationalization of NCC, you can reply under gitter or issue.
如果你愿意为 NCC 的国际化提供帮助,可以在 gitter 或 issue 下回复。

BigCookieKit 申请加入

Basic

Project Name:BigCookieKit

Project Address on GitHub (and other addresses, such as Gitee or GitLab):https://github.com/BigBigZBBing/BigCookieKit

Project Description:高性能反射 Office高性能读写

Document, Blog or Wiki address:https://blog.csdn.net/weixin_42995482

Author:Big.Cookie

Development team or main contributors:Big.Cookie

License:MIT

Additional information

  • 1 - The project is based on .NET technology.
  • 2 - The project has a clear git commit log.
  • 3 - Unit tests with considerable coverage
  • 4 - The project has benchmarking information (for infrastructure projects, this paragraph should be met)
  • 5 - The project creation time should be at least three natural months from the application time
  • 6 - The core developers of the project team should make effective contributions to the project within one natural month from the application time
  • 7 - Project should be hosted on GitHub first
  • 8 - The number of stars in the project is not less than 100
  • 9 - Project should have more complete information:
    • §9.1 - README (, with internationalization is better)
    • §9.2 - Documentation or Wiki
    • §9.3 - Sample code
    • §9.4 - Roadmap
    • §9.5 - Other options: website, blog, manual, tutorial or publication
  • 10 - The project should have more reliable technical support and response capabilities:
    • §10.1 - More effective issue response
    • §10.2 - Other options: communities, mail groups, groups and other social media channels, etc.
  • 11 - The project has a clear development plan and roadmap
  • 12 - The project has not received sponsorship from commercial companies or organizations, and no company has paid for the project
  • 13 - The project has no copyright issues and meets the copyright requirements in the "Community Project Copyright and Open Source License Regulations";

.net core WCF The target principal name is incorrect

i have .net core project which needs to connected to a WCF service. This has been referenced via built-in connected service.
the endpoint address is a https://XXXXX.XXXX which is valid.
we also have configrations like SecurityMode.Transport; Security.Transport.ClientCredentialType = HttpClientCredentialType.Windows;
using WSHttpBinding.
at the end, it always throws an error 'The target principal name is incorrect'
we have tried UpnEndpointIdentity, SpnEndpointIdentity with correct values or without them at all. The error stays...

With all same configurations above in a .net framework project, it works.

Any ideas to make it work in .net core?

if this is not the right place, let me know. i can delete.

Plan to sort out the regulations of the NCC

拟对 NCC 组织的现有(包括现行和未生效的)规范进行一次整理,该项工作预计于 2020 年 1 月前完成,包括:

The Code of Conduct will take effect on January 1, 2020.

The Code of Conduct enters the collective review process

The organizational member code of conduct enters the collective review process
组织成员行为准则进入集体审议流程

English version: https://github.com/dotnetcore/Home/blob/master/code-of-conduct.md
Chinese version: https://github.com/dotnetcore/Home/blob/master/code-of-conduct.zh-CN.md


集体审议通过后,各成员项目可在项目根路径下添加 code-of-conduct.md 文件,并全文完整引用 Home 项目下同名文件的内容,届时将在该成员项目的 new issue 中出现 Helpful resources > Code of conduct,如图:

图片

osharp申请加入NNC

  • 名称:OSharp 快速开发框架
  • 描述:OSharpNS 全称 OSharp Framework with .NetStandard2.x,前身 .net fx 版本始创于2014年,现在的.net core版本是一个基于.NetStandard2.x开发的一个.NetCore快速开发框架。这个框架使用最新稳定版的.NetCore SDK(当前是.NET Core 3.1),对 AspNetCore 的配置、依赖注入、日志、缓存、实体框架、Mvc(WebApi)、身份认证、权限授权等模块进行更高一级的自动化封装,并规范了一套业务实现的代码结构与操作流程,使 .Net Core 框架更易于应用到实际项目开发中。
  • 项目官档(主要是 GitHub)的地址:https://github.com/i66soft/osharp
  • 文档或 Wiki 地址:https://docs.osharp.org/
  • 官方网站地址:https://www.osharp.org/
  • 作者及核心贡献者信息:@gmf520
  • 许可证情况:GitHub license

需搭建多语言混合架构社区,请求分化出去发展

因为surging发展需要,需要分化独立发展形成完整的生态链社区. 有几大设想。
1.多语言生态组建。
2. 中间件生态。
3.官方站建立
4.后续发展商业化支持
也希望得到社区的支持,同意能分化出来独立发展。

.net core open many connection at the same time with mongo database

I build.net core 2.1 websites and Mongo DB, driver. deploy at AWS server in Ubuntu OS at Nginx web server the problem is the website is down when traffic is increased to 1400 user. .Net core log is empty and service is up and running. and Nginx is up and running. but database log open many connections at the time

Database Log:

2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32768 #50628 (999 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32770 #50629 (1000 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32772 #50630 (1001 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32774 #50631 (1002 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32776 #50632 (1003 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32778 #50633 (1004 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32780 #50634 (1005 connections now open)
2019-04-05T10:41:51.545+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32782 #50635 (1006 connections now open)
2019-04-05T10:41:51.546+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32784 #50636 (1007 connections now open)
2019-04-05T10:41:51.546+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32786 #50637 (1008 connections now open)
2019-04-05T10:41:51.546+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32788 #50638 (1009 connections now open)
2019-04-05T10:41:51.552+0000 I NETWORK [listener] connection accepted from 10.142.0.4:32790 #50639 (1010 connections now open)

C# Method to connect to the database:

 private IMongoDatabase Connect(string con)
{
    try
    {
        lock (padlock)
        {
            if (_db == null)
            {
                var mongoConnectionUrl = new MongoUrl(con);
                var seetings = new MongoClientSettings
                {
                    Server = new MongoServerAddress(mongoConnectionUrl.Server.Host, mongoConnectionUrl.Server.Port),
                    WaitQueueSize = 10000,
                    MaxConnectionPoolSize = 500,
                    Credential = MongoCredential.CreateCredential(mongoConnectionUrl.DatabaseName, mongoConnectionUrl.Username, mongoConnectionUrl.Password),
                    ConnectTimeout = TimeSpan.FromSeconds(60),
                    SocketTimeout = TimeSpan.FromSeconds(15),
                    MaxConnectionIdleTime = TimeSpan.FromSeconds(15),

                };
                void SocketConfigurator(Socket s) => s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, true);
                seetings.ClusterConfigurator = builder =>
                    builder.ConfigureTcp(tcp => tcp.With(socketConfigurator: (Action<Socket>)SocketConfigurator));
                MongoClient client = new MongoClient(seetings);

                var database = client.GetDatabase(mongoConnectionUrl.DatabaseName);

                var pack = new ConventionPack();
                pack.Add(new CamelCaseElementNameConvention());
                pack.Add(new IgnoreIfDefaultConvention(true));
                pack.Add(new IgnoreExtraElementsConvention(true));
                ConventionRegistry.Register("camel case", pack, t => true);
                _db = database;

            }
        }

        return _db;
    }
    catch (Exception ex)
    {
        throw new Exception("Error While connecting to db");
    }
}

AgileConfig申请加入NCC

AgileConfig申请加入NCC 。
AgileConfig是一个基于.net core开发的轻量级配置中心。

  1. 部署简单,最少只需要一个数据节点,支持docker部署
  2. 支持多节点分布式部署来保证高可用
  3. 配置支持按应用隔离,应用内配置支持分组隔离
  4. 应用支持继承,可以把公共配置提取到一个应用然后其它应用继承它
  5. 使用长连接技术,配置信息实时推送至客户端
  6. 支持IConfiguration,IOptions模式读取配置,原程序几乎可以不用改造
  7. 配置修改支持版本记录,随时回滚配置
  8. 如果所有节点都故障,客户端支持从本地缓存读取配置

项目主页: https://github.com/kklldog/AgileConfig
作者:minjie.zhou
演示地址:AgileConfig Server Demo 密码123456


Additional information

  • 1 - The project is based on .NET technology.
  • 2 - The project has a clear git commit log.
  • 3 - Unit tests with considerable coverage
  • 4 - The project has benchmarking information (for infrastructure projects, this paragraph should be met)
  • 5 - The project creation time should be at least three natural months from the application time
  • 6 - The core developers of the project team should make effective contributions to the project within one natural month from the application time
  • 7 - Project should be hosted on GitHub first
  • 8 - The number of stars in the project is not less than 100
  • 9 - Project should have more complete information:
    • §9.1 - README (, with internationalization is better)
    • §9.2 - Documentation or Wiki
    • §9.3 - Sample code
    • §9.4 - Roadmap
    • §9.5 - Other options: website, blog, manual, tutorial or publication
  • 10 - The project should have more reliable technical support and response capabilities:
    • §10.1 - More effective issue response
    • §10.2 - Other options: communities, mail groups, groups and other social media channels, etc.
  • 11 - The project has a clear development plan and roadmap
  • 12 - The project has not received sponsorship from commercial companies or organizations, and no company has paid for the project
  • 13 - The project has no copyright issues and meets the copyright requirements in the "Community Project Copyright and Open Source License Regulations";

关于贡献新仓库的流程规范

为了能帮助更多存量开源.NET项目能继续生存下去,建议我们可以开始讨论贡献仓库的准则和流程。
考虑以下几种情况:

  1. 原创项目;
    1.1 已经长肥;
    1.2 有价值的存量项目;
    1.3 社区发起的新坑;
  2. 官方项目的fork;
    2.1 官方仓库还在活跃;
    2.2 官方仓库已经长草;

主要的难点是在于项目价值的评价和准入门槛的设置,包括靠谱的代码审查和投票办法的制定;建议增加有孵化器模式,鼓励社区活跃贡献者在社区的官方支持下开新坑。

可能遇到的特殊情况:
如果某个知名的官方仓库并没有明确表示停止维护,但是事实上又存在长期不更新的情况;由于从原则上来说fork一个知名的库是合法的,以社区的名义fork并维护这样的仓库是否合适?
@alexinea

NCC PMC 关于原 NCC BotSharp 项目退出的通告

关于原 NCC BotSharp 项目退出的通告

NCC PMC Team 和 .NET Core Community PMC Team 遗憾地向诸位通报,因理念不同、道路差异,原 NCC BotSharp 项目正式退出 .NET Core Community,NCC 和 .NET Core Community 对此表示遗憾,由衷地希望原 NCC BotSharp 项目能继续发展壮大。

经五位 NCC 联合发起人一致授权:
NCC 社区资源管理小组收回 https://projects.dotnet-china.org 对原 NCC BotSharp 项目的索引。
NCC 社区项目管理委员会关闭 NCC BotSharp Team 小组。

NCC 和 .NET Core Community 诚挚欢迎所有优秀项目加入 .NET Core Community,一同为 dotnet 生态的完善展现社区力量、贡献社区智慧。

同时,NCC 决定今日起正式开始改革,完善组织各项规范和流程,并适时通过 https://github.com/dotnetcore/Home 通报改革进展。

ketchup 申请加入NCC

ketchup (番茄酱) 是一个基于dotnet core的微服务框架。通讯组件由高可用的grpc组成,注册中心为consul,采用轮询、随机、加权随机的负载均衡策略,并提供一个兼容kong的网关。
项目主页:https://github.com/simple-gr/ketchup
文档:https://github.com/simple-gr/ketchup/wiki
作者:simple
开源协议:MIT

--------------- 请根据加入要求填写以下项 ---------------------------------

  • 1、项目基于.NET 技术(包括且不仅限于 .NET Standard 与 .NET Core);
  • 2、项目具有明确的提交记录(git commit log);
  • 3、项目具有相当覆盖率的单元测试;
  • 4、项目具有一定的跑分数据;对于基础设施类项目,本款应满足;
  • 5、项目创建时间距推荐时间应至少三个自然月;
  • 6、项目团队核心开发者应在距申请时间一个自然月内对项目作有效贡献;
  • 7、项目官档优先托管于 GitHub;
  • 8、项目官档的星数不少于 100 颗;
  • 9、项目应具备较完整的资料:
    • 9.1)README,具有国际化的 README 更佳
    • 9.2)文档或 Wiki
    • 9.3)示例代码
    • 9.4)项目发展路线图(Roadmap)
    • 9.5)其它可选项:网站、博客、手册、教程或出版物
  • 10、项目应该具备较可靠的技术支持与响应能力:
    • 10.1)较有效的 issue 响应
    • 10.2)其它可选项:社区、邮件组、群组及其它社交媒体渠道等
  • 11、项目具有较明确的发展规划和路线图(Roadmap)
  • 12、项目未接受过商业公司或组织的赞助,也未有企业为项目支付费用
    • 12.1)企业开发的开源项目例外
    • 12.2)具有收费版本的开源项目的,其免费版本例外
    • 12.3)项目团队向第三方提供与该项目相关的有偿咨询类服务的例外
  • 13、项目无版权问题,并满足「社区项目版权与开源许可证规定」中有关版权的规定;
  • 14、项目应使用开源软件许可证,并满足「社区项目

System.Text.Json read-only property deserialization returns null

JsonSerializer.Deserialize returns null for readonly properties

`  public class WeatherForecast : Weather
    {
        private WeatherForecast()
        {
        }
        public WeatherForecast(DateTimeOffset date, string summary, int temperatureCelsius) : base(temperatureCelsius)
        {
            Date = date;
            Summary = summary;
        }

        public DateTimeOffset Date { get; }

        public string Summary { get; }
    }

    public class Weather
    {
        protected Weather()
        {
        }

        public Weather(int temperatureCelsius)
        {
            TemperatureCelsius = temperatureCelsius;
        }

        public int TemperatureCelsius { get; }
    }`

the following call returns default for all properties

        ```
      var weatherForecast = new WeatherForecast(DateTime.Now, "Hot", 25);
        string jsonString;
        jsonString = JsonSerializer.Serialize(weatherForecast);

        var DeserializeObject = JsonSerializer.Deserialize<WeatherForecast>(jsonString);
       ```

FlubuCore applies to join NCC

Project description: "FlubuCore - Fluent Builder Core" is a cross platform build and deployment automation system. You can define your build and deployment scripts in C# using an intuitive fluent interface. This gives you code completion, IntelliSense, debugging, FlubuCore custom analyzers, and native access to the whole .NET ecosystem inside of your scripts.

Project's GitHub repository url: https://github.com/flubu-core/flubu.core

Project's document/wiki: https://github.com/flubu-core/flubu.core/wiki

Author and core contributors' info:
https://github.com/orgs/flubu-core/people/mzorec
https://github.com/orgs/flubu-core/people/zoroz

License: BSD 2-Clause

Memo of NCC's WeChat MpAccount

Memo of article of NCC's WeChat MpAccount
关于 NCC 微信公众号文章的备忘

本备忘的内容根据 @NMSAzulX 起草版本的提炼


※ 规范清单

  • 关于公众号文章排版的规范
  • 关于公众号文章转载的规范
  • 关于公众号文章内容与供稿的规范
  • 关于公众号素材与运营人管理的规范
    • 关于文章统一推送的规范

※ 授权级别

可根据不同文章的类型(内容、形式和来源)确定授权级别,不同级别代表不同的转载要求。
可在文章开头处注明该文章的授权级别。

※ 不同公众号之间的相互转载,需要分别讨论以下情况:

  • NCC 公众号与 NCC 成员项目的独立公众号之间的相互转载的情况
  • NCC 公众号与 NCC 组织成员的个人公众号之间的相互转载的情况

※ 针对无时效性文章的按时推送与有时效性文章的即时推送的规范和平衡


诸位可在本 issue 下,或者 NCC 的QQ群或微信联络群内讨论。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.