C# Open Source Project: SiMay Remote Control Management System
A Windows remote control system based on IOCP asynchronous communication model
CodeWF.Markdown: PDF text copyable, images embeddable, copying to WeChat Official Account/Zhihu/Juejin no longer shows HTML source code
Browse by Topic Start with .NET196 articles, suitable for quickly filtering by technical direction
Continuous Reading Read WPF Control Libraries as a topic11 articles, better for systematic reading
A Windows remote control system based on IOCP asynchronous communication model
This article introduces the new file-based program feature of the .NET CLI, which allows developers to run C# source files directly without creating a project file. This feature works by generating a virtual project file in memory and supports NuGet dependencies and project property settings, providing convenience for developing scripts and simple applications. The article also looks forward to the future development directions of this feature, including target path extension, unified command-line arguments, performance improvements, and support for more file-based program commands.
As per title
FluentValidation is a validation framework based on .NET development. It is open-source, free, and elegant, supporting chained operations, easy to understand, feature-complete, and can be deeply integrated with MVC5, WebApi2, and ASP.NET Core. The component provides over a dozen commonly used validators, good scalability, support for custom validators, and support for localization and multilingual.
Azure App Service replaced Nginx with YARP, achieving over 80% throughput improvement. They handle more than 160B requests per day (1.9 m RPS). This is a remarkable technological innovation by Microsoft.
To avoid possible misunderstandings and confusion (although the initial idea was to capitalize on the popularity), the site owner has decided to archive the original Dotnet9 repository.
A .NET 8 web open source framework starting from user experience, supporting ABP vNext native version, Furion version, frontend background integrated with RuoYi Vue 3.0, built-in RBAC permission management and modern community modules, ready to use out of the box.
Code Workshop is a new open-source project by the webmaster that provides web online tools, cross-platform desktop and mobile applications. The webmaster is committed to bringing you a more efficient and convenient experience. Today, the webmaster is proud to launch the 'Article Title URL Alias Generator', helping you easily create URL aliases for article titles, improving SEO and user experience. Come to Code Workshop and explore more practical tools!
Channel is a new collection type introduced by Microsoft after .NET Core 3.0. It is located under the System.Threading.Channels namespace and features asynchronous API, high performance, thread safety, and more.
In network communication, data serialization is the process of converting an object's state into a form that can be stored or transmitted, which is particularly critical for TCP network transmission. In projects, when dealing with the transmission of hundreds of thousands of data items, traditional JSON serialization, due to its redundant field names and string format, leads to large binary packet sizes and inefficient serialization and deserialization. To address these issues, we consider adopting more efficient serialization methods to reduce packet size and improve processing speed.
What is the theoretical length of a UDP packet? What should be the appropriate UDP packet size?
.NET Core 3.1 has been used for a long time. Actually, Microsoft stopped supporting it at the end of 2022. The subsequent LTS version .NET 6 will also end support in November 2024, so upgrading directly to .NET 8 is the best choice.
Although .NET 8 brings many enhancements in areas such as artificial intelligence, cloud-native, performance, native AOT, etc., I am still most interested in the changes in the C# language and some framework-level aspects. Below I introduce the new features in C# 12 and the framework that I find most practical.