dotnet VS referencesource

Compare dotnet vs referencesource and see what are their differences.

dotnet

.NET Community Toolkit is a collection of helpers and APIs that work for all .NET developers and are agnostic of any specific UI platform. The toolkit is maintained and published by Microsoft, and part of the .NET Foundation. (by CommunityToolkit)

referencesource

Source from the Microsoft .NET Reference Source that represent a subset of the .NET Framework (by microsoft)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
dotnet referencesource
28 88
2,725 3,108
3.3% 0.8%
5.2 0.0
7 days ago 24 days ago
C# C#
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

dotnet

Posts with mentions or reviews of dotnet. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-24.
  • Current state of MAUI?
    3 projects | /r/dotnetMAUI | 24 Apr 2023
    Not https://github.com/CommunityToolkit/dotnet
  • Source Generator Debug always NulLReferecneException
    4 projects | /r/csharp | 9 Apr 2023
    Here's some: - MVVM Toolkit - PolySharp - ComputeSharp
  • How did you guys get your first C# job?
    2 projects | /r/csharp | 26 Mar 2023
    Started programming by writing some apps for Windows Phone later UWP during university. A few years ago I started collaborating a lot on GitHub to some Microsoft projects, like the Windows Community Toolkit. There I created a lot of new APIs and libraries, like all the new animation APIs and pipeline brush APIs, etc. I then also proposed adding some general .NET APIs to it, and that's how the MVVM Toolkit was born, along with other libraries which are now moved to the .NET Community Toolkit. Fast forward until about late 2020, and they pinged me saying the new Microsoft Store (which hadn't been announced yet back then) was using several of those new APIs I had written, so we started collaborating more so that I could add more functionality they needed. After that shipped, at some point there was a new opening to which I applied, and here I am in the Microsoft Store team and also leading the .NET Community Toolkit 🙂
  • AppCenter and ComunityToolkit MVVM Compile-error
    1 project | /r/dotnet | 13 Mar 2023
    This is tracked by https://github.com/CommunityToolkit/dotnet/issues/409. The issue is likely that AppCenter image using an older version of Visual Studio (and Roslyn). The MVVM Toolkit needs at least Roslyn 4.0 (ie. Visual Studio 2022) in order to work. Unfortunately this is not something we can change from the MVVM Toolkit, you have to open a support request for AppCenter to ask for a newer Roslyn version, or see if there is a way for you to enable that in your pipeline 🥲
  • WPF - MVVM Community Toolkit - RelacyCommand CanExecute not updating
    2 projects | /r/csharp | 10 Mar 2023
    The toolkit's:
  • The Next C# with Mads Torgersen
    1 project | /r/csharp | 8 Mar 2023
    https://github.com/CommunityToolkit/dotnet/issues/224 - one ask and fix.
  • I want to learn WPF and was told I should use a MVVM based framework any up to date suggestions?
    2 projects | /r/csharp | 5 Jan 2023
    Yeah, the fact properties use fields with annotations right now isn't ideal, it's just the best we could do until C# gets partial properties. I do plan on adding support for that though as soon as C# gets that feature. You can follow the progress here 🙂
  • Guard Library - StaticDotNet.ArgumentValidation
    2 projects | /r/dotnet | 20 Dec 2022
    For comparison, CommunityToolkit.Diagnostics has a guard library.
  • Thinking about zero-allocation parsing.
    2 projects | /r/csharp | 30 Nov 2022
    There is some stuff in CommunityToolkit to lower allocations of frequently converted Spans, StringPool comes to mind.
  • CommunityToolkit.MVVM questions
    1 project | /r/dotnet | 28 Nov 2022
    Most likely this: https://github.com/CommunityToolkit/dotnet/blob/main/src/CommunityToolkit.Mvvm/DependencyInjection/Ioc.cs

referencesource

Posts with mentions or reviews of referencesource. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-30.
  • Got my first c# software engineering job, any advice?
    1 project | /r/dotnet | 14 Jun 2023
    But to go deeper to .NET/CLR architecture is important too. Try to understand how it works inside. Use the source, Luke! https://source.dot.net/ https://referencesource.microsoft.com/ This source code vaults is not completed then try JetBrains dotPeek tool to look at any assembly source code.
  • The most obscure type in the System namespace
    1 project | /r/dotnet | 11 Jun 2023
    (https://github.com/Microsoft/referencesource/blob/master/System.ServiceModel/System/ServiceModel/MessageSecurityVersion.cs; scroll down to inner classes)
  • Why your F# evangelism isn't working
    5 projects | news.ycombinator.com | 30 May 2023
    List is an IList/IReadOnlyList; these interfaces do nothing that couldn't be done right inside the file itself.

    https://referencesource.microsoft.com/#mscorlib/system/colle...

    https://referencesource.microsoft.com/#mscorlib/system/colle...

    Instead we have to go diving through the IList, which implements ICollection, which implements IEnumerable, which implements IEnumerable (again). Just because each interface is composed of another interface, doesn't mean you aren't using inheritance. You are effectively creating a custom inheritance tree through willy-nilly composition.

    It is gratuitous to make this chain so deep, when the underlying code is just a handful of lines.

    https://referencesource.microsoft.com/#mscorlib/system/colle...

    https://referencesource.microsoft.com/#mscorlib/system/colle...

    https://referencesource.microsoft.com/#mscorlib/system/colle...

    ----------------------------------------------------------------------------------------------------------------

    The doc-strings are unnecessary. It's self-evident what most of the code does if you read it.

            // Returns an enumerator for this list with the given
  • How do I counter "Open source is less secure due to vulnerabilities being open too."?
    1 project | /r/opensource | 25 May 2023
    The whole .net framework source code is online.
  • Difference between String and StringBuilder in C#.
    1 project | /r/csharp | 7 May 2023
  • Best way to create two operators that differ only by one argument type and have the same numbers of arguments?
    1 project | /r/csharp | 13 Mar 2023
    https://github.com/microsoft/referencesource/blob/master/System.Numerics/System/Numerics/Vector2.cs https://github.com/microsoft/referencesource/blob/master/System.Numerics/System/Numerics/Vector2_Intrinsics.cs
  • Multi-Key Dictionary in C#
    2 projects | /r/dotnet | 31 Jan 2023
    .net itself has arbitrary interfaces, ex https://github.com/microsoft/referencesource/blob/master/mscorlib/system/action.cs
  • Ask HN: What book you recommend for advanced programming in C#?
    1 project | news.ycombinator.com | 30 Jan 2023
    Assuming if you are new to C# - start coding! And start reading https://learn.microsoft.com/en-us/dotnet/csharp/tour-of-csha...

    If you are not new to C#, start building an application end-to-end/a classic n-tier application, right from using a database, Entity Framework, WebAPI, DTO, AutoMapper, and a front-end (your choice - Angular/React/Vue with TypeScript or better yet - Blazor).

    You will not only understand & use dependency injection, reflection, LINQ, multi-threaded programming, generic programming, source-code generation, unit-testing - and much much more in a practical/real-world usage.

    Peruse https://referencesource.microsoft.com/ once in a while.

    Follow various team members of .NET Framework, C# team and the like on various social-media. https://mobile.twitter.com/i/lists/120961876

    I am sure there will be who agree / disagree with the above approach and will provide more viewpoints for you to consider.

    Enjoy - and strap yourself for an amazing journey or roller-coaster ride, however you want to call it!

  • FTP Web Request Question
    1 project | /r/csharp | 23 Jan 2023
    Maybe from the source of FtpWebRequest it is possible to track what the default behaviour is.
  • Get MimeType for .NET 6.0 Windows Forms program
    1 project | /r/csharp | 19 Nov 2022
    The class is just a very limited dictionary, a library will be the same or better.

What are some alternatives?

When comparing dotnet and referencesource you can also consider the following projects:

ComputeSharp - A .NET library to run C# code in parallel on the GPU through DX12, D2D1, and dynamically generated HLSL compute and pixel shaders, with the goal of making GPU computing easy to use for all .NET developers! 🚀

.NET Runtime - .NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.

csharp-source-generators - A list of C# Source Generators (not necessarily awesome) and associated resources: articles, talks, demos.

ASP.NET Core - ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.

Roslyn - The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

github1s - One second to read GitHub code with VS Code.

MVVM-Samples - Sample repo for MVVM package

CoreCLR - CoreCLR is the runtime for .NET Core. It includes the garbage collector, JIT compiler, primitive data types and low-level classes.

PostSharp.NotifyPropertyChanged - auto-magic INotifyPropertyChanged done right

CoreWCF - Main repository for the Core WCF project

jab - C# Source Generator based dependency injection container implementation.

ILSpy - .NET Decompiler with support for PDB generation, ReadyToRun, Metadata (&more) - cross-platform!