Amazing .NET @amazing_dotnet Channel on Telegram

Amazing .NET

@amazing_dotnet


В этот канал публикуются интересные материалы, связанные с .NET тематикой.

Без рекламы и прочей х*йни.

Идеи и предложения:
https://github.com/Chakrygin/amazing-dotnet/issues

Или в личку:
@ichakrygin

См. также:
https://t.me/amazing_devops

Amazing .NET (Russian)

Канал "Amazing .NET" приглашает всех любителей и профессионалов в области .NET разработки в мир интересных материалов и обсуждений. Здесь вы найдете полезные статьи, новости, обновления и другие материалы, которые помогут вам быть в курсе последних тенденций и разработок в этой сфере.

В канале отсутствует любая реклама или ненужный спам, здесь сосредоточены только полезные и качественные материалы.

Если у вас есть идеи или предложения по содержанию канала, вы всегда можете поделиться ими на GitHub: https://github.com/Chakrygin/amazing-dotnet/issues или связаться лично с администратором по нику @ichakrygin.

Также рекомендуем посетить канал "Amazing DevOps" (https://t.me/amazing_devops) для дополнительной информации и обсуждений. Присоединяйтесь к нам прямо сейчас и узнавайте первыми все самое интересное из мира .NET разработки!

Amazing .NET

10 Jan, 16:48


Design Patterns for Building Resilient Systems

CodeOpinion | Derek Comartin | January 10, 2025

When the CrowdStrike incident happened, I was alarmed and notified of a degrading performance in parts of our system. That’s because we were indirectly impacted. I will provide some thoughts about how specific design patterns allow you to build resilient systems, allowing you to keep your system alive and online.

https://codeopinion.com/design-patterns-for-building-resilient-systems/

Amazing .NET

10 Jan, 16:48


21 выпуск. Diversity: как выжить в мире позитивной дискриминации и корпоративного булшита

Бреслав и Ложечкин | January 10, 2025

Попробовали по-доброму и без булшита поговорить на очень холиварную тему diversity, inclusion, позитивной дискриминации и всего с этим связанного. Отличаются ли мужчины и женщины по умению программировать? Как выжить мужчине-программисту в мире позитивной дискриминации. Кто виноват? Что делать?

🇬🇧 Встреча с Андреем Бреславом и Александром Ложечкиным в Лондоне 18 марта 🎙🇬🇧

Если хотите быть в курсе всех деталей и поучаствовать, пожалуйста, заполните форму: https://forms.gle/EqXZ4Ya1dfMX9X8y8

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/25789910

Слушать на YouTube: https://www.youtube.com/playlist?list=PLNSmyatBJig64AjlwZrYIgjPwiTsHQNf_

Слушать на Mave: https://breslav-lozhechkin.mave.digital/ep-21

Обсудить выпуск: https://t.me/breslavandlozhechkin

Amazing .NET

07 Jan, 18:48


.NET Aspire Quick Tip – Managing Container & Data Lifetime

DevBlogs | .NET Blog | January 7, 2025

.NET Aspire 9 adds new control over the lifetime of containers on your local developer environment. Let's look at how to manage them with the new APIs!

https://devblogs.microsoft.com/dotnet/dotnet-aspire-container-lifetime/

Amazing .NET

07 Jan, 15:51


Writing a String Numeric Comparer with .NET 9

Khalid Abuhakmeh | January 7, 2025

I recently saw that .NET 10 adds a numeric comparer, allowing you to sort string elements that may contain numeric values at the end of a string. Think movie sequels or number versions of an operating system. To my surprise, I could not believe it wasn’t already included in .NET, but then I sat down to try to write my own, and I now “get it”. The edge cases alone can drive you mad. Numeric ordering is subjective. Should the numbers come before Roman numerals? Should Roman numerals be parsed as numbers? What about decimals?

Anyway, I’ve added my numeric comparer implementation in this post, which uses some of the latest .NET features. Enjoy!

https://khalidabuhakmeh.com/writing-a-string-numeric-comparer-with-dotnet-9

🏷️ dotnet

Amazing .NET

07 Jan, 13:03


Benchmarking with Visual Studio Profiler

DevBlogs | Visual Studio Blog | January 7, 2025

In Visual Studio 17.13 Preview we have released our updated BenchmarkDotNet diagnosers, allowing you to use more of the tools in the performance profiler to analyze benchmarks. With this change it is super quick to dig into CPU usage and allocations of benchmarks making the measure, change, measure cycle quick and efficient.
Benchmarking a real project
So, to show how we can use the tools to make things better let's go ahead and benchmark a real project. At the time of writing this article, CsvHelper is the 67th most popular package on Nuget.org with over 9 million downloads of the current version. If we can be...

https://devblogs.microsoft.com/visualstudio/benchmarking-with-visual-studio-profiler/

Amazing .NET

07 Jan, 13:03


Implementing an interceptor with a source generator: Creating a source generator - Part 11

.NET Escapades | Andrew Lock | January 7, 2025

In this post I show how interceptors work, and how you can implement an interceptor using a source generator and the GetInterceptableLocation API.

https://andrewlock.net/creating-a-source-generator-part-11-implementing-an-interceptor-with-a-source-generator/

🏷️ Source Generators;C#

Amazing .NET

07 Jan, 06:49


Кроссплатформенный терминал Modbus TCP / RTU / ASCII с открытым исходным кодом: Часть 3

Хабр | 6 января 2025 г.

Встречайте новое обновление моего терминала!

Терминальная программа – это многофункциональный кроссплатформенный инструмент инженера, который позволяет взаимодействовать с внешним устройством или сервером. Приложение поддерживает различные вариации протокола Modbus, а также дает возможность работы с данными в строковом или байтовом формате.

Главные фичи этой версии это макросы с пользовательскими именами, работа с байтами в режиме "Без протокола" и поддержка протоколов Modbus RTU и ASCII поверх TCP.

https://habr.com/ru/articles/871788/

🏷️ C#, Open source, Программирование, Программирование микроконтроллеров, Промышленное программирование

Amazing .NET

06 Jan, 13:03


Exploring CollectionsMarshal for Dictionary

Meziantou's blog | Gérald Barré | January 6, 2025

Unlike ConcurrentDictionary, Dictionary does not have a GetOrAdd method. This method is useful when you want to add a key-value pair to the dictionary if the key does not exist, or return the value if the key already exists. The naive implementation of this method looks like this:

https://www.meziantou.net/exploring-collectionsmarshal-for-dictionary.htm

🏷️ .NET

Amazing .NET

06 Jan, 13:03


Unlocking insights with Meter Histogram in the profiler

DevBlogs | Visual Studio Blog | January 6, 2025

Are you struggling with performance bottlenecks in your applications? Look no further! Visual Studio 2022 introduces the Meter Histogram feature in its performance profiling suite, providing you with the tools to analyze and visualize histogram data like never before.



The Meter Histogram is a key enhancement to Visual Studio's performance profiling suite. This feature enables you to capture and analyze histogram data generated by various performance instruments, offering clear insights into the distribution of your application's data. By visualizing this data, you can easily identify patterns and anomalies...

https://devblogs.microsoft.com/visualstudio/unlocking-insights-with-meter-histogram-in-the-profiler/

Amazing .NET

06 Jan, 08:48


Persist Values With AsyncLocal in C# Async Flow

Code Maze | January 6, 2025

In this article, we’ll explain the AsyncLocal class and how to persist values across an async flow with the AsyncLocal class in C#. We’ll start by describing the challenge that AsyncLocal solves and continue with examples of how it does that. We’ll scratch the surface of the AsyncLocal inner workings and finish with the cases when we can use it.

https://code-maze.com/csharp-persist-values-with-asynclocal-in-async-flow/

Amazing .NET

06 Jan, 03:07


Why is Open Source important? And is it free?

Steven Giesel | January 6, 2025

As I am an open source maintainer myself, I want to highlight my personal thoughts on why open source is important. I will put a bit more focus on the .NET side of things, but most of the thoughts are "valid" in the broader open source world.

https://steven-giesel.com/blogPost/591f2354-a205-4507-bbb2-7d88781e0563/why-is-open-source-important-and-is-it-free

🏷️ Open Source

Amazing .NET

03 Jan, 08:47


Как понять Unity3d, если ты .NET разработчик

Хабр | 2 января 2025 г.

Ловили ли вы себя когда-нибудь на мысли, что, будучи C# .NET разработчиком, вы можете попробовать начать разрабатывать игры на Unity3d? Ведь язык используется тот же. А точно ли тот же? Точно ли код, написанный для .NET, может без проблем быть скопирован для выполнения в Unity3d приложении? Давайте в этом разберемся и поймем, какие дополнительные знания необходимы C# .NET разработчику, чтобы с комфортом разрабатывать игры.

https://habr.com/ru/articles/871342/

🏷️ C#, Unity, Разработка игр

Amazing .NET

02 Jan, 16:48


Vertical Slice Architecture isn’t technical

CodeOpinion | Derek Comartin | January 2, 2025

Migrate to a Vertical Slice Architecture from a monolith? Is it more like microservices? Does it replace Clean Architecture? None of the above. It’s about being driven by cohesion of business capabilities and business processes. It has nothing to do with layers or physical deployment concerns.

https://codeopinion.com/vertical-slice-architecture-isnt-technical/

🏷️ Architecture

Amazing .NET

31 Dec, 16:47


Great .NET Documentation with Astro, Starlight, and MarkdownSnippets

Khalid Abuhakmeh | December 31, 2024

The hallmark of every great project is equally great documentation, but it can be increasingly difficult for developers to keep both in sync. Luckily, I’ve been experimenting again with a combination of Starlight and MarkdownSnippets to make maintaining code samples and documentation much more convenient.

In this post, we’ll see how to set up your repository so that MarkdownSnippets pulls samples from your codebase and updates your Starlight documentation.

https://khalidabuhakmeh.com/great-dotnet-documentation-with-astro-starlight-and-markdownsnippets

🏷️ astro, dotnet, javascript

Amazing .NET

31 Dec, 14:46


Dock the Code Search window in Visual Studio 2022

DevBlogs | Visual Studio Blog | December 31, 2024

Ever felt frustrated with the search window cluttering your workspace? The latest feature in Visual Studio 2022 gives you more control over the behavior of the Code and Feature Search window, making your search experience smoother and more efficient.



Some users have shared that the search window feels intrusive, interrupting your work by appearing mid-screen or on the wrong screen and taking up precious screen real estate. You now have the option to turn the search window into a tool window and dock it where you’d like.
Choose how you want your search window
Visual Studio now allows you to dock the searc...

https://devblogs.microsoft.com/visualstudio/dock-the-code-search-window-in-visual-studio-2022/

Amazing .NET

30 Dec, 18:47


Top .NET Videos & Live Streams of 2024

DevBlogs | .NET Blog | December 30, 2024

Let's take a look back at the amazing .NET videos, events, and live streams from 2024!

https://devblogs.microsoft.com/dotnet/top-dotnet-videos-live-streams-of-2024/

Amazing .NET

30 Dec, 13:01


Go to line anywhere with Code Search for Visual Studio 2022

DevBlogs | Visual Studio Blog | December 30, 2024

Finding the exact line of code where an issue is occurring can be like searching for a needle in a haystack. Whether you are debugging an error on line 43 of a file or diving into a specific section of code, you can efficiently jump to the right places with this newest addition to Code Search.

In Code Search, you can now jump to a specific line in the current file or another file, making it faster and easier to move around your codebase.
Navigate to a line in the current document
No need to scroll endlessly to find a specific line. With the updated Code Search, you can swiftly jump to any line in the current...

https://devblogs.microsoft.com/visualstudio/go-to-line-anywhere-with-code-search-for-visual-studio-2022/

Amazing .NET

27 Dec, 04:47


Critical: .NET Install links are changing

DevBlogs | .NET Blog | December 26, 2024

The .NET installers and archives distribution method is currently changing unexpectedly. This change may impact your development, CI, and production infrastructure. It is crucial to validate if you are affected and monitor for any downtime or disruptions.

https://devblogs.microsoft.com/dotnet/critical-dotnet-install-links-are-changing/

Amazing .NET

26 Dec, 10:46


Метод Contains коллекций в Entity Framework для SQL Server

Хабр | Блог компании Альфа-Банк | 25 декабря 2024 г.

Долгое время в метод Contains(), который используется в Entity Framework для фильтрации данных по списку значений, не вносили изменения. До выхода Entity Framework 8 коллекция с этим методом внутри оператора запросов where LINQ транслировалась в значения в виде констант внутри оператора IN для SQL. Если количество элементов равно одному, то преобразование происходило в выражение с оператором ‘=’ на стороне MS SQL Server. Аналогично транслируется и метод расширения Where() LINQ.

https://habr.com/ru/companies/alfa/articles/869120/

🏷️ .NET, C#, Microsoft SQL Server

Amazing .NET

24 Dec, 16:47


Alpine.Js Polling ASP.NET Core APIs For Updates

Khalid Abuhakmeh | December 24, 2024

Building dynamic JavaScript experiences has come a long in the 20 years since I first started software development, but updating the document object model (DOM) can still be a real pain in the butt. That’s why we’ve seen single-page application frameworks explode in use. While JavaScript provides a very capable API when interacting with the DOM, it can be verbose.

In this post, we’ll see how to use the Alpine.Js library’s declarative attribute approach to create a real-time updating UI with minimal JavaScript and no direct use of the DOM APIs.

https://khalidabuhakmeh.com/alpinejs-polling-aspnet-core-apis-for-updates

🏷️ aspnetcore, csharp, javascript

Amazing .NET

24 Dec, 13:01


Connect securely to your Azure resources

DevBlogs | Visual Studio Blog | December 24, 2024

Visual Studio 2022's Connected Services features are being updated to help you start secure. In the past, for example with Azure Storage, we’d inject the entire connection string into your configuration. With this update, we’ve removed the secrets from the UX – and from what we save to configuration – altogether. This means your code has fewer secrets in it, so you won’t push those into your source control repository inadvertently.


Integrated authentication, by default
Prior to this update, Connected Services would inject secret-inclusive connection strings for resources like Azure Storage into your secrets...

https://devblogs.microsoft.com/visualstudio/connect-securely-to-your-azure-resources/

Amazing .NET

24 Dec, 08:48


Топ-10 ошибок, найденных в C# проектах за 2024 год

Хабр | Блог компании PVS-Studio | 23 декабря 2024 г.

В течение 2024 года команда PVS-Studio активно делилась статьями о проверке открытых C# проектов. Мы решили продолжить традицию и отобрали для вас 10 самых интересных ошибок, обнаруженных за этот период. Приятного чтения!

https://habr.com/ru/companies/pvs-studio/articles/868968/

🏷️ .NET, C#, Open source

Amazing .NET

23 Dec, 18:47


Top .NET Blogs Posts of 2024

DevBlogs | .NET Blog | December 23, 2024

Let's take a look back at the top .NET blogs from 2024 from exciting announcements, deep dives on new features, and so much more.

https://devblogs.microsoft.com/dotnet/top-dotnet-blogs-posts-of-2024/

Amazing .NET

23 Dec, 13:02


Reading USN Journal with .NET

Meziantou's blog | Gérald Barré | December 23, 2024

If you want to detect when a file is created, modified, or deleted, you can use the FileSystemWatcher class in .NET. However, this is only available when the application is running. What if you want to detect changes that occurred while the application was not running? The USN Journal is a feature of the NTFS and ReFS file systems that keeps track of changes to files and directories. It allows applications to quickly identify changes to the file system.

The USN journal contains 3 kinds of records:

https://www.meziantou.net/reading-usn-journal-with-dotnet.htm

🏷️ .NET

Amazing .NET

23 Dec, 13:02


Security updates to Azure publishing from Visual Studio

DevBlogs | Visual Studio Blog | December 23, 2024

Visual Studio 2022 introduces a new feature to improve the security of publishing applications to Azure App Service. This feature is designed to disable Basic Authentication and enable integrated security for a more secure publishing process.



Basic Authentication has been identified as a less secure method for managing app deployments. Visual Studio 2022 addresses this issue by offering you an option to disable Basic Authentication, which enhances security by using integrated authentication.
The problem with Basic Authentication
Basic Authentication involves sending user credentials in a format that is n...

https://devblogs.microsoft.com/visualstudio/security-updates-to-azure-publishing-from-visual-studio/

Amazing .NET

23 Dec, 08:48


Новые диагностические правила в PVS-Studio 7.34

Хабр | Блог компании PVS-Studio | 20 декабря 2024 г.

С релизом PVS-Studio 7.34 в анализаторе появились новые диагностические правила: taint для Java, множество Unity-диагностик для C#, углубление в OWASP и многое другое! Расскажем о них в этой статье.

https://habr.com/ru/companies/pvs-studio/articles/868508/

🏷️ .NET, C#, C++, Java

Amazing .NET

23 Dec, 06:49


Authenticate videos and images in Angular

Steven Giesel | December 23, 2024

Sometimes you are faced with the need to authenticate videos and images in Angular. And yes I know, normally I write about .NET, but this one took my some time - so I thought it might be worth sharing.

https://steven-giesel.com/blogPost/caa09b13-83e4-452e-899f-598c66181e63/authenticate-videos-and-images-in-angular

🏷️ Angular, Auth, JWT

Amazing .NET

23 Dec, 06:49


Global Query Filters in Entity Framework Core

Code Maze | December 23, 2024

In this article, we will discuss Entity Framework Core’s global query filters and how to use them. We will also consider other scenarios related to using query filters that we need to be aware of.

https://code-maze.com/efcore-global-query-filters/

Amazing .NET

22 Dec, 22:46


106 выпуск. Долгожданный xUnit 3, новинки Npgsql и MongoDB в EF, .NET-рынок

RadioDotNet | December 22, 2024

[00:02:35] — Npgsql EF 9 Release 
[00:10:30] — What's new in MongoDB EF Core Provider 
[00:18:50] — xUnit.net v3 Release 
[00:56:00] — Lesser known CLR GC Handles 
[01:06:50] — StackOverflowException vs OutOfMemoryException 
[01:15:35] — Исследование рынка .NET разработки, анализ и прогнозы 
[01:41:40] — Кратко о разном 

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/12041961

Слушать на YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3SpQ9GRn2jv-NEpvN23CUC5

Слушать на Mave: https://radiodotnet.mave.digital/ep-107

Поддержать на Boosty: https://boosty.to/radiodotnet

Amazing .NET

21 Dec, 20:46


PVS-Studio соответствует требованиям ГОСТ Р 71207—2024 (статический анализ программного обеспечения)

Хабр | Блог компании PVS-Studio | 21 декабря 2024 г.

Инструментальное средство PVS-Studio разрабатывается с учётом требований, предъявляемых к статическим анализаторам в ГОСТ Р 71207–2024, выявляет критические ошибки и может использоваться при разработке безопасного программного обеспечения. Рассмотрим функциональные возможности, реализованные в PVS-Studio на конец 2024 года в отношении анализа исходного кода программного обеспечения, написанного на компилируемых языках программирования C, C++, C#, Java.

https://habr.com/ru/companies/pvs-studio/articles/868578/

🏷️ C#, C++, Java, Информационная безопасность

Amazing .NET

17 Dec, 18:51


.NET Conf 2024 Recap – Celebrating .NET 9, AI, Community, & More

DevBlogs | .NET Blog | December 18, 2024

.NET Conf 2024 is over, but you can catch up with all the announcement and fun with video recordings, slides, demos, and more.

https://devblogs.microsoft.com/dotnet/dotnet-conf-2024-recap/

Amazing .NET

17 Dec, 16:53


Building a Persistent Counter with Alpine.Js

Khalid Abuhakmeh | December 17, 2024

If you read this blog, you likely know I predominantly work with .NET technologies and use web technologies such as HTML, CSS, and JavaScript. The web is an excellent space for new and exciting ways to solve age-old problems. I recently thought about the Blazor “Counter” example that ships with the Blazor Wasm template and how I’ve solved the same problem using Htmx. The issue with Htmx is that it still requires a backend to manage the state; in the case of a counter, this state is the current count. What if you wanted to build a self-contained client-side experience?

https://khalidabuhakmeh.com/building-a-persistent-counter-with-alpinejs

🏷️ html, javascript

Amazing .NET

17 Dec, 13:14


Refresh your Find results

DevBlogs | Visual Studio Blog | December 17, 2024

Are you tired of having to repeatedly launch the Find window in Visual Studio to update your search results? Whether you've just refactored some code or pulled recent changes, having to redo a search to get updated results is no longer necessary. With the new refresh option, you can now update your Find results without the hassle of starting over.



The Refresh search results button in Visual Studio 2022 will save you time and effort when searching through your code.
Refresh your previous Find
No more friction when updating your earlier Find results! After completing a Find, you can click the clockwise arr...

https://devblogs.microsoft.com/visualstudio/refresh-your-find-results/

Amazing .NET

17 Dec, 13:14


Building LaTeX projects on Windows easily with Docker

.NET Escapades | Andrew Lock | December 17, 2024

In this post I describe how I build LaTeX projects on a Windows machine by using Docker and the blang/latex image.

https://andrewlock.net/building-latex-projects-on-windows-easily-with-docker/

🏷️ Docker;IDEs

Amazing .NET

17 Dec, 08:52


Как забрать фотки с флешки, если Android их не отдаёт

Хабр | Блог компании FirstVDS | 12 декабря 2024 г.

Как-то так получилось, что я никогда не воспринимал Android-телефон как объект, содержимым которого можно управлять из обычного .fsx. Все данные туда и обратно я таскал исключительно ручками при помощи USB и проводника. Дальше на стороне компа их мог раскидывать скрипт, но в зону телефона я не лез. Максимум, мог написать мобильное приложение для систематических операций с загрузкой на сервер и обратно. Однако недавно нужда заставила меня проникнуть из скрипта в обе области сразу, и это оказалось настолько проще, чем я предполагал, что теперь я испытываю злость и сожаление (как будто проморгал выигрышную комбинацию и додавливал противника лишние 4 хода).

https://habr.com/ru/companies/first/articles/865932/

🏷️ .NET, F#, Программирование, Смартфоны

Amazing .NET

16 Dec, 22:46


.NET Framework Migration to .NET9

CodeOpinion | Derek Comartin | December 16, 2024

Have a large .NET Framework codebase that you want to migrate to .NET8 or beyond? Here’s some tips of my .NET Framework migration and things to consider.

https://codeopinion.com/net-framework-migration-to-net9/

🏷️ .NET

Amazing .NET

16 Dec, 18:51


Exploring Microsoft.Extensions.VectorData with Qdrant and Azure AI Search

DevBlogs | .NET Blog | December 16, 2024

Discover how to use Microsoft.Extensions.VectorData to implement semantic search using Qdrant and Azure AI Search

https://devblogs.microsoft.com/dotnet/vector-data-qdrant-ai-search-dotnet/

Amazing .NET

04 Dec, 16:53


How Inline Return Values Simplify Debugging in Visual Studio 2022

DevBlogs | Visual Studio Blog | December 4, 2024

Have you ever found yourself creating temporary variables just to inspect return values from functions? It’s a small task that can quickly become tedious, breaking your rhythm and cluttering up your code. Visual Studio 2022 introduces a smarter way to handle this with "Inline Return Values," allowing you to stay focused on coding without the extra steps.



This new feature allows you to view return values directly in your code, right where you need them. With Copilot integration, you can go a step further by analyzing the return values in real time. It simplifies understanding and verifying your code’s behav...

https://devblogs.microsoft.com/visualstudio/how-inline-return-values-simplify-debugging-in-visual-studio-2022/

Amazing .NET

04 Dec, 10:49


Моки, L1 и никакого деплоя. Собираем идеальный .NET-тест для веб-сервиса

Хабр | Блог компании «Лаборатория Касперского» | 4 декабря 2024 г.

Автотесты, как известно, работа пыльная и ресурсозатратная. А уж если речь идет об интеграционных, то тем более: сначала осуществляешь сборку теста, затем добавляешь его в нужную среду, а потом еще тот самый деплой, подготовка которого может занимать критически много времени… Но будучи SDET-ом, то есть совмещая в себе навыки разработчика, тестировщика и DevOps, я постигаю архитектуру тестов и иногда нахожу интересные решения по ее оптимизации :)

В этой статье расскажу, как тестировать ASP.NET-приложения максимально быстро, не закрывая IDE и вообще не запуская деплой! Покажу, как при таком подходе создавать не только, например, тесты REST API, но и веб-тесты с использованием Selenium или Playwright. Объясню, что такое TestServer и WebApplicationFactory на конкретных примерах, и продемонстрирую, как с ними можно работать!

Статья будет максимально полезна тем, кто так или иначе уже погружен в непростой мир .NET и C# (и не утонул в нем). Для вас это готовый туториал по интеграции всех этих инструментов! Впрочем, это у нас в компании широко используются .NET и «шарпы» — но даже если ваши тесты пишутся не на C#, все равно рекомендую пробежаться по моей статье! Уверен, вы сможете почерпнуть для себя пару хороших идей, ведь все описанное ниже можно реализовать и на других языках программирования.

https://habr.com/ru/companies/kaspersky/articles/859718/

🏷️ .NET, C#, Программирование, Тестирование IT-систем

Amazing .NET

03 Dec, 14:46


Introducing the Copy Git Permalink Feature in Visual Studio 17.12

DevBlogs | Visual Studio Blog | December 3, 2024

We are excited to announce the release of the Copy Git Permalink feature in Visual Studio 17.12. This new functionality streamlines the process of sharing code references, enhancing collaboration and ensuring that critical context is preserved.

Effortless Code Sharing
If you’ve found yourself needing to share code snippets with colleagues, you know the challenges of preserving context. With the new Copy Git Permalink feature, you can now generate a permalink directly from Visual Studio to the remote repository. Simply select the desired code, right-click, and choose the “Copy Permalink” option under the Git s...

https://devblogs.microsoft.com/visualstudio/introducing-the-copy-git-permalink-feature-in-visual-studio-17-12/

Amazing .NET

03 Dec, 10:50


Cross-Origin-Embedder-Policy: securing embedded resources: Understanding cross-origin security headers - Part 3

.NET Escapades | Andrew Lock | December 3, 2024

In this post I discuss the Cross-Origin-Embedder-Policy, the requirements it places on your resources, and why it's required for some JavaScript APIs.

https://andrewlock.net/understanding-security-headers-part-3-cross-origin-embedder-policy/

🏷️ ASP.NET Core, CORS, Security

Amazing .NET

02 Dec, 14:48


AI-Powered Insights: Streamlining Variable Analysis with GitHub Copilot in Visual Studio

DevBlogs | Visual Studio Blog | December 2, 2024

Tired of spending countless hours troubleshooting errors and unexpected values in your code? Visual Studio 2022 introduces GitHub Copilot Variable Analysis. This powerful tool makes inspecting and analyzing variables from Locals, Autos, watch windows and DataTips effortless, helping you solve issues faster and cutting down on time and frustration.
Enhanced Debugging Experience
Debugging can often resemble searching for a needle in a haystack, especially in complex codebases. But GitHub Copilot Variable Analysis can make the debugging experience much easier and smoother. Simply hover over any variable in the Loc...

https://devblogs.microsoft.com/visualstudio/ai-powered-insights-streamlining-variable-analysis-with-github-copilot-in-visual-studio/

Amazing .NET

02 Dec, 13:14


NuGet Packages: security risks and best practices

Meziantou's blog | Gérald Barré | December 2, 2024

NuGet packages offer a convenient way to share code, but many developers download them without reviewing the contents or verifying updates when new versions are released. When you install a NuGet package, you are:

https://www.meziantou.net/nuget-packages-security-risks-and-best-practices.htm

🏷️ .NET

Amazing .NET

02 Dec, 08:52


How to Connect a SQLite Database to EF Core

Code Maze | December 2, 2024

In this article, we’ll discuss connecting a SQLite database to an ASP.NET Core Web API using EF Core.

https://code-maze.com/efcore-how-to-connect-a-sqlite-database/

Amazing .NET

02 Dec, 06:52


Having fun with ValueTuple

Steven Giesel | December 2, 2024

Just as a heads up: This blog post will probably bring you 0 value in your daily life - well, maybe a short smile. Let's put ValueTuple to its extreme!

https://steven-giesel.com/blogPost/0a3db64c-e514-45fc-a1a1-2b79cc42f797/having-fun-with-valuetuple

🏷️ .NET, C#

Amazing .NET

01 Dec, 20:46


Task изнутри: управление потоками в .NET и создание своих планировщиков

Хабр | Блог компании OTUS | 27 ноября 2024 г.

Привет, Хабр! Сегодня поговорим о том, как работают задачи в .NET, зачем может понадобиться собственный TaskScheduler и как его реализовать.

https://habr.com/ru/companies/otus/articles/861074/

🏷️ .NET, C#

Amazing .NET

28 Nov, 13:06


Transform your debugging experience with GitHub Copilot

DevBlogs | Visual Studio Blog | November 28, 2024

Are your unit tests failing, and do you want to debug them more effectively? The latest feature in Visual Studio 2022, powered by GitHub Copilot, has the perfect solution for you. Introducing the Debug with Copilot button in Test Explorer, this feature takes the hassle out of debugging failed tests and gets you closer to passing tests in no time.



Debugging failing unit tests can often be a tedious and frustrating process. Developers spend significant time identifying the root cause of the failure and figuring out the steps to resolve it. This time-consuming process can delay development timelines and reduc...

https://devblogs.microsoft.com/visualstudio/transform-your-debugging-experience-with-github-copilot/

Amazing .NET

27 Nov, 22:46


104 выпуск. Релизы .NET 9, C# 13, ASP.NET Core 9, EF Core 9, F# 9 и Aspire 9

RadioDotNet | November 27, 2024

[00:01:55] — .NET Conf 2024 and .NET 9 
[00:04:30] — What's new in C# 13 
[00:34:55] — What's new in .NET libraries for .NET 9 
[00:48:35] — What's new in F# 9 
[01:06:30] — What's new in the SDK and tooling for .NET 9 
[01:16:15] — What's new in ASP.NET Core 9 
[01:27:20] — What's new in the .NET 9 runtime 
[01:48:40] — What's New in EF Core 9 
[02:00:20] — Visual Studio 2022 v17.12 with .NET 9 
[02:09:45] — What's new in .NET Aspire 9 
[02:25:10] — ReSharper and Rider 2024.3 
[02:29:30] — What's New in UI (MAUI, WPF, WinForms) 

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/12041961

Слушать на YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3SpQ9GRn2jv-NEpvN23CUC5

Слушать на Mave: https://radiodotnet.mave.digital/ep-105

Поддержать на Boosty: https://boosty.to/radiodotnet

Amazing .NET

27 Nov, 16:52


Dramatically faster package restores with .NET 9’s new NuGet resolver

DevBlogs | .NET Blog | November 27, 2024

.NET 9 introduces a new NuGet dependency graph resolver that dramatically improves package restore performance for large repositories. Learn how this reimagined approach reduces restore times from 30 minutes to just 2 minutes by creating a more efficient dependency graph with fewer nodes.

https://devblogs.microsoft.com/dotnet/dotnet-9-nuget-resolver/

Amazing .NET

27 Nov, 14:47


Интеграционные тесты для ASP.NET Core

Хабр | 27 ноября 2024 г.

Интеграционные тесты, написанные программистом — это отличный способ обеспечить уверенность в своём веб-сервисе.

В мире .NET для разработки веб-сервисов обычно используют ASP.NET Core, но интеграционное тестирование часто упускают из виду либо делают не очень качественно.

Статья покажет полноценный подход к организации интеграционных тестов на языке Gherkin для API-сервиса, написанного на C# 12 с ASP.NET Core 8 и использующего PostgreSQL.

https://habr.com/ru/articles/860932/

🏷️ .NET, C#, Тестирование веб-сервисов

Amazing .NET

27 Nov, 13:06


Updates for C++ developers in Visual Studio 2022 17.12

DevBlogs | Visual Studio Blog | November 27, 2024

Visual Studio 17.12 is here and comes with a host of new features for C++ developers. We’ve made improvements across our toolchain, C++ Build Insights, Unreal Engine support, and more. This post gives a quick overview of what’s available; for all the details, see What’s New for C++ Developers in Visual Studio 2022 17.12 on the C++ blog.
Standard Library and MSVC Compiler
As always, you can find all the details about our STL work in the changelog on GitHub. Thanks to everyone who contributed changes for this release!

On the conformance side, we have finished the implementation of C++23’s P2286R8 Formatting Ra...

https://devblogs.microsoft.com/visualstudio/updates-for-c-developers-in-visual-studio-2022-17-12/

Amazing .NET

26 Nov, 22:46


Evaluate the quality of your AI applications with ease

DevBlogs | .NET Blog | November 26, 2024

Get started with the new Microsoft.Extensions.AI.Evaluation library to kickstart your Intelligent Application eveluation journey.

https://devblogs.microsoft.com/dotnet/evaluate-the-quality-of-your-ai-applications-with-ease/

Amazing .NET

26 Nov, 16:52


Debugger and Diagnostics updates in Visual Studio 17.12

DevBlogs | Visual Studio Blog | November 26, 2024

We are thrilled to announce a host of exciting new features in Visual Studio 17.12, designed to enhance your development experience and boost your productivity. Our team has been working diligently to address some of the most popular requests from our developer community, and we are confident that these updates will significantly improve your workflow.

For a full list of updates, check out the release notes.
Display Inline Method Return Values
The Visual Studio debugger now displays inline values for return statements, responding to one of the most requested features from the developer community.

This enh...

https://devblogs.microsoft.com/visualstudio/debugger-and-diagnostics-updates-in-visual-studio-17-12/

Amazing .NET

26 Nov, 13:06


Cross-Origin-Resource-Policy: preventing hotlinking and XSSI attacks: Understanding cross-origin security headers - Part 2

.NET Escapades | Andrew Lock | November 26, 2024

In this post I describe how to use the Cross-Origin-Resource-Policy to block cross-origin requests that would normally be allowed, such as in tags.

https://andrewlock.net/understanding-security-headers-part-2-cross-origin-resource-policy-preventing-hotlinking/

🏷️ ASP.NET Core, CORS, Security

Amazing .NET

25 Nov, 20:46


OpenAPI document generation in .NET 9

DevBlogs | .NET Blog | November 25, 2024

Introducing the New OpenAPI Document Generation Feature in .NET 9. Let's take a look at what it is, how to use it, and how it streamlines API development in .NET.

https://devblogs.microsoft.com/dotnet/dotnet9-openapi/

Amazing .NET

25 Nov, 16:51


Copying error messages just got easier

DevBlogs | Visual Studio Blog | November 25, 2024

Have you ever been frustrated by the tedious process of copying error descriptions from the Error List? Previously with Visual Studio, copying an error would include all column headers and row values, which isn’t always what you want. If you were planning to search for the error online, it was a hassle to clean up the text after pasting.



Now when you `Ctrl+C` on a row in the Error List, only the error description is copied to the clipboard. You can still copy the entire row with `Ctrl+Shift+C` and now even directly search the web for the error. This makes it easy to get the information you need, saving pre...

https://devblogs.microsoft.com/visualstudio/copying-error-messages-just-got-easier/

Amazing .NET

25 Nov, 13:06


Update dependencies in nuspec file using Renovate

Meziantou's blog | Gérald Barré | November 25, 2024

While nuspec files are not as common as they used to be, they are still used in some projects when you have special needs. For instance, Meziantou.DotNet.CodingStandard uses a nuspec file to create a package that supports all TFMs. Renovate is a tool to keep your dependencies up-to-date. It supports many package managers, including NuGet. It's more configurable than Dependabot and provides good integrations with the main platforms such as GitHub, GitLab, and Azure DevOps. In this post, I describe how you can use Renovate to update dependencies in a nuspec file.

A nuspec file is an XML file that contains metadata about the package. It can also contain dependencies. Here's an example of a nuspec file:

https://www.meziantou.net/update-dependencies-in-nuspec-file-using-renovate.htm

🏷️ .NET

Amazing .NET

25 Nov, 08:52


Optimistic Locking vs Pessimistic Locking in .NET

Code Maze | November 25, 2024

Since the invention of database systems, they have become the primary source of truth for almost every web application’s data. As user demands grow, applications scale, and so does the concurrency within the system. Ensuring data integrity and consistency along with effective locking mechanisms, becomes a major concern when multiple users attempt to access and modify the same resource simultaneously, potentially causing conflicts and overwriting each other’s data.

To handle these conflicts, developers have two main concurrency control mechanisms: pessimistic locking and optimistic locking. Each approach has advantages and disadvantages, and we will explore them in this article.

https://code-maze.com/dotnet-optimistic-locking-vs-pessimistic-locking/

Amazing .NET

25 Nov, 06:51


"Always use early returns" - LinkedIn Edition

Steven Giesel | November 25, 2024

A dear LinkedIn - a pool of gems where everyone is expert in everything. Over the time I collected some trophies from there and today I want to discuss one of them: "Always use early returns".

https://steven-giesel.com/blogPost/ba94e3fe-57e7-4f27-83a7-97f349a4b39c/always-use-early-returns-linkedin-edition

🏷️ .NET, C#, LinkedIn

Amazing .NET

22 Nov, 18:50


Announcing TypeScript 5.7

DevBlogs | TypeScript | November 22, 2024

Today we excited to announce the availability of TypeScript 5.7!
If you're not familiar with TypeScript, it's a language that builds on JavaScript by adding syntax for type declarations and annotations. This syntax can be used by the TypeScript compiler to type-check our code, and it can also be erased to emit clean, idiomatic JavaScript code. Type-checking is helpful because it can catch bugs in our code ahead of time, but adding types to our code also makes it more readable and allows tools like code editors to give us powerful features like auto-completion, refactorings, find-all-references, and more. TypeScr...

https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/

Amazing .NET

22 Nov, 16:51


Библиотека EremexControls.NET для Avalonia UI — Большое обновление (v 1.1 EAP)

Хабр | 22 ноября 2024 г.

Библиотека Контролов EMX Controls для Avalonia UI позволяет вам создавать многофункциональные графические интерфейсы для Windows, Linux, macOS и WebAssembly. Почти полгода назад вышла первая версия контролов. С тех пор библиотека развивалась и расширялась – появились новые компоненты и новые функции. А сегодня у нас большая новость - мы выпускаем EAP (early-access preview) для версии 1.1.

https://habr.com/ru/articles/860608/

🏷️ .NET, Интерфейсы, Разработка под Linux, Разработка под Windows

Amazing .NET

22 Nov, 13:05


Top 5 GitHub Copilot Features in Visual Studio from Microsoft Ignite 2024

DevBlogs | Visual Studio Blog | November 22, 2024

At this year’s Microsoft Ignite, it was truly exciting to see Scott, Dalia, and Jessie demo some of the most innovative features of GitHub Copilot that are transforming the developer experience in Visual Studio. From the breakout session, we highlighted five standout features that are pushing productivity to the next level. Whether you're working on complex edits or crafting custom workflows, these tools showcase how AI can elevate your coding game in ways you never thought possible.



*Note: It will take 24-48 hours after the session for the recording to be uploaded.
1. Copilot Edits: Collaborative Ite...

https://devblogs.microsoft.com/visualstudio/top-5-github-copilot-features-in-visual-studio-from-microsoft-ignite-2024/

Amazing .NET

21 Nov, 13:05


Making you more productive with Visual Studio v17.12

DevBlogs | Visual Studio Blog | November 21, 2024

The 12th update to Visual Studio 2022 is packed with lots of exciting new features that users have been asking for! Here are some of the awesome highlights from this release that are some of my personal favorites. For all the details, be sure to check out our release notes.
Copy from the Error List
You see an error in the Error List that you don't know how to fix. So, you select it and hit Ctrl+C to copy the description for a web search. After you've pasted it into the search engine, you realize it copied all column headers and row values instead of just the description. Now you must delete everything except th...

https://devblogs.microsoft.com/visualstudio/making-you-more-productive-with-visual-studio-v17-12/

Amazing .NET

20 Nov, 20:46


Never rewrite code?

CodeOpinion | Derek Comartin | November 20, 2024

Is it a bad idea to rewrite code or an entire system? At some point, developers want to rewrite for various reasons. Often, it’s because we simply don’t understand the existing codebase or think it’s a tire fire. But is the benefit there? Sometimes, yes. Sometimes, no. It’s a pretty nuanced topic around cost/benefit.

https://codeopinion.com/never-rewrite-code/

🏷️ Software Design

Amazing .NET

20 Nov, 16:51


dotnet scaffold – Next Generation Project Creation for .NET

DevBlogs | .NET Blog | November 20, 2024

Introducing a new command line tool dotnet scaffold, a new interactive way to create projects in .NET.

https://devblogs.microsoft.com/dotnet/introducing-dotnet-scaffold/

Amazing .NET

20 Nov, 13:05


Copy files across instances of Visual Studio

DevBlogs | Visual Studio Blog | November 20, 2024

Transferring code files between different instances of Visual Studio has often been a tedious task. To simplify this process, Visual Studio 2022 now includes a feature that allows you to easily copy and paste code files and folders between instances using the Solution Explorer. This enhancement aims to streamline workflow and save time.



Until now, moving code files and folders between different Visual Studio instances has been a hassle. Developers often had to manually relocate files, risking errors and inefficiencies in their workflow. With the new copy and paste functionality, this problem is now a thing...

https://devblogs.microsoft.com/visualstudio/copy-files-across-instances-of-visual-studio/

Amazing .NET

19 Nov, 16:52


Dynamic Htmx Islands with ASP.NET Core

Khalid Abuhakmeh | November 19, 2024

I’m a big fan of static site renderers, and they are still one of the missing elements that would make ASP.NET Core more compelling for users across the vast ecosystem divide. In the meantime, developers must rely on tools like Astro, Jekyll, and 11ty to build static site experiences. Recently, I read about Astro 5.0 and its server island implementation. Server islands allow for mostly static pages to carve out portions of the page that will be rendered on-demand by, you guessed it, the server. This allows site authors to deliver fast, statically rendered pages that benefit the user while allowing for dynamic user-specific content.

https://khalidabuhakmeh.com/dynamic-htmx-islands-with-aspnet-core

🏷️ aspnet, htmx

Amazing .NET

19 Nov, 16:51


VisualStudio.Extensibility 17.12: CodeLens support is here!

DevBlogs | Visual Studio Blog | November 19, 2024

We continue to invest in the VisualStudio.Extensibility SDK to allow users like you to create extensions that run faster and smoother than ever before! VisualStudio.Extensibility helps you build extensions that run outside the main Visual Studio IDE process for improved performance and reliability, and can be installed without the need to restart Visual Studio. Additional benefits include a sleek and intuitive .NET 8-based API and comprehensive, well-maintained documentation to help you develop amazing extensions faster than ever before.

This 17.12 release builds on our previous releases and brings support for...

https://devblogs.microsoft.com/visualstudio/visualstudio-extensibility-17-12-codelens-support-is-here/

Amazing .NET

19 Nov, 14:47


What’s new in the Windows Subsystem for Linux in November 2024

DevBlogs | Windows Command Line | November 19, 2024

The latest updates to WSL bring new enterprise security features, new improvements to WSL distros, and the announcement that RedHat is officially becoming a WSL distro!

Check out the table of contents in this post for a quick overview of all the announcements!

Red Hat is becoming an official WSL distro



Although you can run any Linux distro in WSL, being an official distro makes it easier for WSL users to install and discover it with actions like and . We’re excited to announce that Red Hat will soon be delivering a Red Hat Enterprise Linux WSL distro image in the coming months, and it will be shipped with t...

https://devblogs.microsoft.com/commandline/whats-new-in-the-windows-subsystem-for-linux-in-november-2024/

Amazing .NET

19 Nov, 13:05


Cross-Origin-Opener-Policy: preventing attacks from popups: Understanding cross-origin security headers - Part 1

.NET Escapades | Andrew Lock | November 19, 2024

In this post I describe the vulnerabilities in window.opener and window.open() and how to protect yourself with Cross-Origin-Opener-Policy.

https://andrewlock.net/understanding-security-headers-part-1-cross-origin-opener-policy-preventing-attacks-from-popups/

🏷️ ASP.NET Core, Security

Amazing .NET

19 Nov, 08:51


Тюним запросы в EF Core с помощью интерсепторов

Хабр | Блог компании Контур | 18 ноября 2024 г.

Entity Framework обладает достаточно богатым встроенным языком запросов, позволяющим решать широкий спектр задач. Но бывают ситуации, когда либо сгенерированные с его помощью запросы оказываются недостаточно оптимальными, либо возможности EF покрывают не весь спектр функционала базы.

В этом случае приходится либо генерировать запросы вручную (напрямую, либо с помощью хранимых процедур), либо прибегать к дополнительной обработке сгенерированных запросов с помощью механизма интерсепторов. Рассмотрим работу этого механизма подробнее.

https://habr.com/ru/companies/skbkontur/articles/852022/

🏷️ .NET, C#

Amazing .NET

18 Nov, 18:50


Enhance Your .NET Developer Productivity with GitHub Copilot

DevBlogs | .NET Blog | November 18, 2024

Learn how to get started with GitHub Copilot for .NET development for AI assisted development in Visual Studio and Visual Studio Code

https://devblogs.microsoft.com/dotnet/enhance-your-dotnet-developer-productivity-with-github-copilot/

Amazing .NET

18 Nov, 16:52


Git tooling updates in Visual Studio 17.12

DevBlogs | Visual Studio Blog | November 18, 2024

We are thrilled to announce the latest updates to Git tooling in Visual Studio, designed to enhance your development experience and streamline your workflow. These new features are in direct response to user feedback, ensuring that you have the tools you need to be more productive and efficient. For the full list, check out the release notes.
Pull request drafts and templates
You can now create pull request drafts and start your descriptions with GitHub templates in Visual Studio. These were the two top requests for the create a pull request experience.
Draft PRs
Use the drop-down menu on the Create button to...

https://devblogs.microsoft.com/visualstudio/git-tooling-updates-in-visual-studio-17-12/

Amazing .NET

18 Nov, 13:06


Embeded languages in string values supported by Roslyn

Meziantou's blog | Gérald Barré | November 18, 2024

In a recent post, I shared how to highlight C# code in string values. Roslyn provides more built-in highlighters / code-completions in string values. Most of the supported languages are available as constants of the StringSyntaxAttribute class. To indicate the language, you can use the lang or language comment or the [StringSyntax] attribute.

https://www.meziantou.net/embeded-languages-in-string-values-supported-by-roslyn.htm

🏷️ .NET, Roslyn

Amazing .NET

18 Nov, 10:49


Early Binding and Late Binding in C#

Code Maze | November 18, 2024

In C#, method binding refers to associating a method call with the method’s code definition. When we invoke a method, the program determines which specific method to execute. This process, known as “binding,” can occur at two different times: during compile-time (early binding) or runtime (late binding).

https://code-maze.com/csharp-binding/

Amazing .NET

18 Nov, 06:51


How to assert assumptions in code that might not be true?

Steven Giesel | November 18, 2024

Sometimes we have to make assumptions in our code. For example, that a certain property or variable has a specific value. On top comes, we have a specific idea but we are not 100% sure if they are correct. Let's meet Debug.Assert.

https://steven-giesel.com/blogPost/0c8009eb-0bb6-4716-ae6c-fcb3de4a26e6/how-to-assert-assumptions-in-code-that-might-not-be-true

🏷️ Assert, C#, Debug

Amazing .NET

15 Nov, 16:51


Join Us at Microsoft Ignite: Unlock GitHub Copilot’s New Potential in Visual Studio

DevBlogs | Visual Studio Blog | November 15, 2024

Get ready for an exciting Microsoft Ignite breakout session where we’re unveiling the latest advancements in GitHub Copilot in Visual Studio! Join Dalia Abo Sheasha, Jessie Houghton, and Scott Hanselman as they dive into how GitHub Copilot is evolving to help developers work smarter, collaborate better, and achieve more.



Here’s a little preview of what we’ll be discussing:
Enhanced AI-Powered Coding Experience
We’ll be sharing some powerful new tools that make prompt crafting and code completion smoother than ever. Discover how GitHub Copilot’s conversational abilities are growing to bring even more ...

https://devblogs.microsoft.com/visualstudio/join-us-at-microsoft-ignite-unlock-github-copilots-new-potential-in-visual-studio/

Amazing .NET

15 Nov, 10:47


Что нового в .NET 9?

Хабр | Блог компании PVS-Studio | 13 ноября 2024 г.

.NET 9 вышел в релиз, и значит, можно начинать переносить свои проекты на новую версию. В этой статье мы рассмотрим новые улучшения и фишки .NET: C# 13, производительность, BuildCheck, GC, LINQ, NuGet Audit и прочее.

https://habr.com/ru/companies/pvs-studio/articles/858174/

🏷️ .NET, C#, Программирование

Amazing .NET

15 Nov, 03:17


Контур + GFS = Kanso. История развития файловой системы

Хабр | Блог компании Контур | 14 ноября 2024 г.

Привет! Я Антон, работаю в команде базовой инфраструктуры Контура и занимаюсь развитием распределенной системы хранения данных Kanso. Это наш форк GFS (Google File System). Мы развиваем Kanso уже более 15 лет, в статье я расскажу про это подробнее.

https://habr.com/ru/companies/skbkontur/articles/858526/

🏷️ C#, Распределённые системы

Amazing .NET

14 Nov, 18:49


Nullable Reference Types in F# 9

DevBlogs | .NET Blog | November 14, 2024

Read about latest F# 9 feature, Nullable Reference Types

https://devblogs.microsoft.com/dotnet/nullable-reference-types-in-fsharp-9/

Amazing .NET

14 Nov, 18:49


Calling methods is easier and faster with C# 13 params collections

DevBlogs | .NET Blog | November 14, 2024

Let's take a look at C# 13's new params collections that make methods easier to use and allow new optimizations.

https://devblogs.microsoft.com/dotnet/csharp13-calling-methods-is-easier-and-faster/

Amazing .NET

14 Nov, 13:04


Fix code with GitHub Copilot

DevBlogs | Visual Studio Blog | November 14, 2024

Looking to resolve code issues quickly? The new GitHub Copilot feature integrated into the lightbulb and error list in Visual Studio 2022 offers a valuable solution for developers. Whether you're working in C# or C++, this feature will help you understand and address problems in your codebase more efficiently.



The integration of GitHub Copilot into Visual Studio 2022 provides quick fixes and insightful explanations right at your fingertips. Say goodbye to sifting through documentation or conducting endless online searches to debug your code. The lightbulb and error list now offers direct access to GitHub C...

https://devblogs.microsoft.com/visualstudio/fix-code-with-github-copilot/

Amazing .NET

14 Nov, 08:49


Нафига козе баян? (Мне не сдались такие программисты)

Хабр | 13 ноября 2024 г.

Я обычно не люблю затрагивать общие вопросы, но на работе недавно столкнулся с очень специфичной ситуацией, которой хочу поделиться с вами. Касается она нового человека, которого в 2024 наняли свеженьким, из колледжа.

И тут понеслась... Такого я себе даже в страшном бреду представить не мог.

https://habr.com/ru/articles/858386/

🏷️ C#, Карьера в IT-индустрии, Образование за рубежом, Программирование, Управление персоналом

Amazing .NET

13 Nov, 22:46


Introducing the .NET Aspire Community Toolkit

DevBlogs | .NET Blog | November 13, 2024

Learn about the .NET Aspire Community Toolkit, a collection of tools and libraries that help you build with .NET Aspire.

https://devblogs.microsoft.com/dotnet/introducing-the-dotnet-aspire-community-toolkit/

Amazing .NET

13 Nov, 22:46


You’re not as loosely coupled as you think!

CodeOpinion | Derek Comartin | November 13, 2024

When you hear tight coupling or being loosely coupled, what does that even mean? There are many aspects to coupling that you need to think about. Temporal, Data Schema, Location, Technology. Removing one aspect usually involves having to deal with a whole new set of problems.

https://codeopinion.com/youre-not-as-loosely-coupled-as-you-think/

Amazing .NET

13 Nov, 16:50


First preview of Visual Studio 2022 v17.13

DevBlogs | Visual Studio Blog | November 13, 2024

We’re excited to announce the availability of Visual Studio 2022 v17.13 Preview 1 – the first preview of our next update to Visual Studio. This update focuses on providing fantastic developer experiences across the board, with a focus on stability & security, and AI & productivity. Download the preview and see the full list of enhancements in the release notes.  


Quality & security 
Ensuring the highest standards of quality and security is paramount. Visual Studio 2022 v17.13 incorporates robust quality and security enhancements designed to provide a seamless and secure development environment. ...

https://devblogs.microsoft.com/visualstudio/first-preview-of-visual-studio-2022-v17-13/

Amazing .NET

13 Nov, 14:46


Rider 2024.3: Same-Day Support for .NET 9 SDK and C# 13, Console Debugging for Game Dev, AI Enhancements, and More

The JetBrains Blog | Releases | November 13, 2024

We’re thrilled to announce that Rider 2024.3 is here. This release marks a major change to our team’s development process. Starting with version 2024.3, we’re aiming to align updates to JetBrains Rider and ReSharper with major .NET SDK releases. While this isn’t a guaranteed timeline for every release, our goal is to minimize the wait time for new C# features, so you won’t have to rely on EAP builds to get the latest functionality.

https://blog.jetbrains.com/dotnet/2024/11/13/rider-2024-3-release/

🏷️ .NET 9, C# 13, Game dev, Rider, Rider 2024.3, game development, remote development

Amazing .NET

13 Nov, 14:46


dotCover, dotMemory, dotPeek, and dotTrace 2024.3 Have Been Released!

The JetBrains Blog | Releases | November 13, 2024

dotCover 2024.3, dotMemory 2024.3, dotPeek 2024.3, and dotTrace 2024.3 have been released and are ready for download!

Let’s take a look at what’s new with these .NET tools.

https://blog.jetbrains.com/dotnet/2024/11/13/dotnet-tools-243-release/

🏷️ dotCover, dotMemory, dotPeek, dotTrace, dotUltimate

Amazing .NET

13 Nov, 14:46


ReSharper 2024.3: Day-One C# 13 Support, Streamlined Code Cleanup, and Enhanced C++ Tools

The JetBrains Blog | Releases | November 13, 2024

We’re happy to announce the release of ReSharper 2024.3! This release marks an important step toward a new approach to our product updates. With version 2024.3, we’re working to align ReSharper’s releases with major .NET SDK updates, aiming to bring you the latest C# capabilities as early as possible. While we can’t guarantee this timing for every release, our goal is to reduce the wait for new features, so you may not always need to rely on our Early Access Program or wait for separate updates.

https://blog.jetbrains.com/dotnet/2024/11/13/resharper-2024-3-release/

🏷️ ReSharper, Release

Amazing .NET

12 Nov, 18:47


Visual Studio 2022 v17.12 with .NET 9

DevBlogs | Visual Studio Blog | November 12, 2024

We are thrilled to announce the General Availability (GA) of Visual Studio 2022 version 17.12. This update focuses on providing fantastic developer experiences for working with .NET 9 projects and new AI productivity features, along with continuous improvements for all developers.



Thanks to your continuous feature requests, we've incorporated many of them in this release. There's something new for every developer. We have added several new tools and enhancements that simplify your workflow and improve productivity. Whether you're looking for advanced debugging capabilities, more efficient code management, ...

https://devblogs.microsoft.com/visualstudio/visual-studio-2022-v17-12-with-dotnet-9/

Amazing .NET

12 Nov, 16:51


C# Language Support in ReSharper and Rider 2024.3

The JetBrains Blog | How-To's | November 12, 2024

Our upcoming 2024.3 release marks a huge milestone for our development process but especially for our users. ReSharper and Rider 2024.3 will be simshipped along with .NET 9 and C# 13! Yes, you heard right—no more waiting an extra few weeks or using our EAP builds to take advantage of the latest and greatest C# of all time. If all goes well (🤞), you can enjoy your most loved language in your most loved IDE starting tomorrow!

https://blog.jetbrains.com/dotnet/2024/11/12/csharp-language-support-in-resharper-and-rider-2024-3/

🏷️ .NET, .NET 9, C#, C# 13, ReSharper, Rider, Unity

Amazing .NET

12 Nov, 16:51


Announcing .NET 9

DevBlogs | .NET Blog | November 12, 2024

Announcing the release of .NET 9, the most productive, modern, secure, intelligent, and performant release of .NET yet. With updates across ASP.NET Core, C#, .NET MAUI, .NET Aspire, and so much more.

https://devblogs.microsoft.com/dotnet/announcing-dotnet-9/

Amazing .NET

11 Nov, 16:48


Better GitHub Copilot completions for C#

DevBlogs | Visual Studio Blog | November 11, 2024

We're excited to announce a significant enhancement to GitHub Copilot that elevates your C# coding experience. Introducing the new update: GitHub Copilot code completions now provide more accurate and relevant autocomplete suggestions by incorporating additional C# context.

Previously, GitHub Copilot generated suggestions based on the content of your currently active file and any other open files in your editor. While this approach was helpful, we have discovered that including more relevant context can greatly improve the quality of these suggestions.

With this latest update, GitHub Copilot now automatical...

https://devblogs.microsoft.com/visualstudio/better-github-copilot-completions-for-c/

Amazing .NET

11 Nov, 13:02


Stop using diagnostic verbosity in MSBuild

Meziantou's blog | Gérald Barré | November 11, 2024

On CI, some projects use the msbuild diagnostic verbosity to get more information about the build. This is useful to troubleshoot build issues. However, this verbosity level has some drawbacks. In this post, I describe how to use the binary log feature of MSBuild to get the same information in a more efficient way.

https://www.meziantou.net/stop-using-diagnostic-verbosity-in-msbuild.htm

🏷️ .NET

Amazing .NET

11 Nov, 13:02


19 выпуск. Доверие

Бреслав и Ложечкин | November 11, 2024

Как завоевать доверие? Поговорили о вроде бы очень эфемерной теме - про доверие, но, как оказалось, что от уровня доверия между людьми и в организации в целом зависят напрямую качество и количество коммуникаций в команде и организации, и её бизнес-результаты. В выпуске обсудили, что нужно делать и чего не делать, чтобы вам доверяли и чтобы самому доверять других, а также, что должен делать руководитель, чтобы уровень доверия в организации рос.

Материалы партнерской рубрики:
— Статья "Успех тимлида — это успех команды: три ошибки тимлидов в начале пути"
— https://habr.com/ru/companies/avito/articles/818207/

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/25789910

Слушать на YouTube: https://www.youtube.com/playlist?list=PLNSmyatBJig64AjlwZrYIgjPwiTsHQNf_

Слушать на Mave: https://breslav-lozhechkin.mave.digital/ep-19

Обсудить выпуск: https://t.me/breslavandlozhechkin

Amazing .NET

11 Nov, 10:46


How to Use Pointers in C#

Code Maze | November 11, 2024

In this article, we’ll introduce pointers in C#, exploring their syntax, usage in unsafe code blocks, and practical applications with direct memory manipulation. We’ll also discuss considerations involved in using pointers in a managed language.

https://code-maze.com/csharp-how-to-use-pointers/

Amazing .NET

11 Nov, 06:48


An awaitable Blazor Modal Dialog

Steven Giesel | November 11, 2024

I already showcased a simple modal dialog in a previous post. However, the dialog was not awaitable. In this post, I'll show you how to create an awaitable modal dialog.

https://steven-giesel.com/blogPost/79ab37d4-5fdf-4c36-8b99-ac17bbe1fc01/an-awaitable-blazor-modal-dialog

🏷️ .NET, Blazor, C#

Amazing .NET

11 Nov, 02:06


103 выпуск. Сравнения Rust и C#, Minimal API и Controllers, Problem и Details

RadioDotNet | November 10, 2024

[00:01:50] — Provide opt-in to experimental APIs 
[00:11:50] — Comparison of Rust's borrow checker to C# 
[00:36:35] — Problem Details for ASP.NET Core APIs 
[00:54:30] — Comparing performance between Minimal API and classic Controllers 
[01:05:30] — API Error Messages for a Good Developer Experience 
[01:19:15] — Книга «ASP.NET Core в действии 3» в правильном переводе 
[01:22:55] — Кратко о разном 

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/12041961

Слушать на YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3SpQ9GRn2jv-NEpvN23CUC5

Слушать на Mave: https://radiodotnet.mave.digital/ep-104

Поддержать на Boosty: https://boosty.to/radiodotnet

Amazing .NET

10 Nov, 06:46


Ответ на статью о «Наиболее быстром интерпретаторе»

Хабр | 9 ноября 2024 г.

Недавно была опубликована статья под заголовком "Глобально оптимальный, восьмой и наиболее быстрый вид интерпретаторов байткода". Несколько тезисов из статьи вызвали у меня сомнения в их справедливости. Об этом я попробовал написать ряд комментариев тире вопросов к указанной статье. Но основной лейтмотив всех ответов сводился к тому - "а ты напиши свою статью". Подход не столько инженерно-научный, сколько детсадовский. Мне бы хватило и содержательных ответов в формате комментариев, но как говорится - уговорили :).

Итак, что же утверждается автором статьи про наиболее быстрый интерпретатор:

https://habr.com/ru/articles/857342/

🏷️ .NET, C, C++, Java, Системное программирование

Amazing .NET

09 Nov, 10:46


Исследование рынка .NET разработки: Анализ текущих тенденций и прогнозы

Хабр | 8 ноября 2024 г.

.NET остается одной из ведущих платформ для разработки корпоративных приложений, особенно в России, где она используется как в крупных корпорациях, так и в малом бизнесе. Но как на самом деле чувствует себя сообщество разработчиков? Для того чтобы понять это, мы решили опросить 300 российских .NET разработчиков и руководителей разработки. И вот что из этого получилось.

https://habr.com/ru/articles/857042/

🏷️ .NET, Интервью, Карьера в IT-индустрии

Amazing .NET

08 Nov, 22:46


Announcing TypeScript 5.7 RC

DevBlogs | TypeScript | November 8, 2024

Today we are announcing the availability of the release candidate of TypeScript 5.7.

To get started using the RC, you can get it through npm with the following command:

Let's take a look at what's new in TypeScript 5.7!
Checks for Never-Initialized Variables
For a long time, TypeScript has been able to catch issues when a variable has not yet been initialized in all prior branches.

Unfortunately, there are some places where this analysis doesn't work.
For example, if the variable is accessed in a separate function, the type system doesn't know when the function will be called, and instead takes an "op...

https://devblogs.microsoft.com/typescript/announcing-typescript-5-7-rc/

Amazing .NET

08 Nov, 16:48


.NET Digest #4

Хабр | Блог компании PVS-Studio | 7 ноября 2024 г.

Добро пожаловать на четвёртый выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! В этот раз набралось множество новостей, и команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали!

https://habr.com/ru/companies/pvs-studio/articles/856772/

🏷️ .NET, C#, Программирование

Amazing .NET

07 Nov, 20:46


Get Ready for .NET Conf 2024!

DevBlogs | .NET Blog | November 7, 2024

The biggest .NET event of the year is almost here, its all free, all online, and you're invited!

https://devblogs.microsoft.com/dotnet/get-ready-for-dotnet-conf-2024/

Amazing .NET

07 Nov, 16:49


The ReSharper and the .NET Tools 2024.3 Release Candidates Are Now Available

The JetBrains Blog | Releases | November 7, 2024

Get a preview of all the latest features and improvements set to be shipped with the next major ReSharper and .NET tools releases by downloading the Release Candidate builds that have just landed.

https://blog.jetbrains.com/dotnet/2024/11/07/rsrp-net-tools-2024-3-rc/

🏷️ 2024.3, ReSharper, ReSharper C++

Amazing .NET

07 Nov, 16:49


The Rider 2024.3 Release Candidate Is Now Available

The JetBrains Blog | Releases | November 7, 2024

The next big release for Rider is just around the corner! If you’re eager to get a sneak peek, you can download the Release Candidate version of Rider 2024.3 from our website right now.

https://blog.jetbrains.com/dotnet/2024/11/07/the-rider-2024-3-rc/

🏷️ 2024.3, Release candidate, Rider

Amazing .NET

07 Nov, 13:01


Refit в .NET: обзор библиотеки для упрощения работы с REST API

Хабр | 6 ноября 2024 г.

В этом обзоре мы познакомимся с библиотекой Refit для .NET, которая значительно упрощает работу с REST API.

Refit позволяет разработать типобезопасные http клиенты с использованием интерфейсов и атрибутов, что делает код более читаемым и удобным для сопровождения.

https://habr.com/ru/articles/828040/

🏷️ .NET, C#

Amazing .NET

06 Nov, 22:46


Your Customers Don’t Care About JavaScript

CodeOpinion | Derek Comartin | November 6, 2024

Your customers do not care about the technology behind your app. What programming language, frameworks, libraries, or whatever tooling you’re using, they don’t care. They care about it providing them value and that it has certain characteristics. They want it to work.

https://codeopinion.com/your-customers-dont-care-about-javascript/

🏷️ Architecture

Amazing .NET

06 Nov, 16:50


Introducing a new, more conversational way to chat with GitHub Copilot

DevBlogs | Visual Studio Blog | November 6, 2024

In the fast-evolving world of software development, intuitive AI-driven interactions are becoming essential to unlocking new levels of productivity. Today, we’re excited to share our latest innovation - a guided chat experience within GitHub Copilot that reshapes how developers interact with AI. This guided chat experience is available in Visual Studio 2022 17.12 Preview 3 and above.

This guided way to chat was created with one clear goal in mind: to make interactions between developers and AI more natural, effective, and aligned with everyday workflows. It is our deep belief that conversational AI is the futu...

https://devblogs.microsoft.com/visualstudio/conversational-way-to-chat-with-github-copilot/

Amazing .NET

06 Nov, 13:02


Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 2. Выражения

Хабр | Блог компании FirstVDS | 16 октября 2024 г.

В прошлой части я говорил про адаптацию API Godot к F#. Далее в планах было разобраться с общей структурой приложения, но я столкнулся с необходимостью закрыть серьёзный пробел в публичном корпусе текстов. Так что в этой и последующих частях я буду объяснять нечто странное — как из обычной функции путём эволюции получается работающая программа на Godot.

https://habr.com/ru/companies/first/articles/850980/

🏷️ .NET, F#, Godot, Программирование

Amazing .NET

05 Nov, 18:48


Learn how to create a Client-Server Application in under 45 Minutes in the new Season of AI

DevBlogs | Visual Studio Blog | November 5, 2024

What if you could create a robust, versatile client-server application in under 45 minutes? With Visual Studio and GitHub Copilot, this is not only possible but also efficient and enjoyable. This Season of AI, we show you how to use developer tools like GitHub Copilot to create apps from scratch. This season of AI occurs from October 1 through December 30, 2024, and the first 150 speakers with confirmed events will receive a special swag gift pack!

You will experience firsthand how to:

- Develop both server-side and client-side code using .NET, Blazor, and Minimal APIs.

- Run and test your applicatio...

https://devblogs.microsoft.com/visualstudio/learn-how-to-create-a-client-server-application-in-under-45-minutes-in-the-new-season-of-ai/

Amazing .NET

05 Nov, 13:01


Recent updates for NetEscapades.EnumGenerators: interceptors!

.NET Escapades | Andrew Lock | November 5, 2024

In this post I describe the experimental interceptor support in NetEscapades.EnumGenerators that replaces ToString() calls with ToStringFast() automatically.

https://andrewlock.net/recent-updates-for-netescapades-enumgenerators-interceptors/

🏷️ .NET Core, Roslyn, Source Generators

Amazing .NET

05 Nov, 06:48


Разработка бота для Telegram на платформе .NET

Хабр | 1 ноября 2024 г.

Введение

Telegram — один из самых популярных мессенджеров в мире, предлагающий такие функции, как групповые чаты, каналы, голосовые и видеозвонки, а также возможность создания ботов. В данной статье мы не будем ставить цель показать, как создать с нуля приложение a-la "Hello, World!", а изучим более сложный пример готовой реализации бота на платформе .NET с использованием современных технологий и практик разработки, локализацией, поддержкой пожертвований в Telegram Stars и т.д.

https://habr.com/ru/articles/855236/

🏷️ .NET, C#, Мессенджеры, Программирование

Amazing .NET

01 Nov, 10:46


«Удалённо» управляем компьютером с доступом в BIOS

Хабр | Блог компании RUVDS.com | 1 ноября 2024 г.

Итак, о чём это? Сейчас для удалённого управления компьютером есть великое множество программ на любой цвет, вкус и запах. Но, что если мы хотим пойти немного дальше, и наши требования к удалённому управлению становятся немного жёстче:

Мы хотим иметь возможность не только работать в операционной системе, но и заходить в биос, или вообще эту систему переустановить.

По тем или иным причинам, компьютер не может быть подключён к сети, но управлять им мы от этого меньше не хотим, а рядом у нас есть компьютер, который в сети находиться может

Но как это сделать? Вот этим мы тут и будем заниматься…

https://habr.com/ru/companies/ruvds/articles/847842/

🏷️ C#, DIY или Сделай сам, GitHub, Open source

Amazing .NET

01 Nov, 04:47


Что не так с .NET в Yandex Cloud Functions

Хабр | 31 октября 2024 г.

В статье объясню специфику Яндекс Функций. Покажу свой эксперимент с запуском приложений, которые опубликованы разными способами — в том числе с использованием AOT-компиляции. А в конце — сравнение результатов и выводы.

Интересны особенности работы .NET в Yandex Cloud Functions? Добро пожаловать под кат.

https://habr.com/ru/articles/819213/

🏷️ .NET, C#, Serverless, Высокая производительность, Облачные сервисы

Amazing .NET

30 Oct, 22:46


HTMX: What’s Old is New Again

CodeOpinion | Derek Comartin | October 30, 2024

What’s old is new again, kind of. HTMX fits into that motto for me and it’s getting pretty popular, but at the same time It gets a lot of pushback. I’m going to take a step back and explain how we got to where we are in current web dev, which will explain what HTMX is.

https://codeopinion.com/htmx-whats-old-is-new-again/

🏷️ HTTP API

Amazing .NET

30 Oct, 13:04


Бескультурная сказка про Dottrace

Хабр | Блог компании Контур | 30 октября 2024 г.

Короткая зарисовка о том, почему важно осознанно писать каждую строчку кода, каждый символ. А заодно и небольшой мастер-класс по использованию dottrace и класса string одновременно.

https://habr.com/ru/companies/skbkontur/articles/854340/

🏷️ .NET, C#, Высокая производительность, Программирование

Amazing .NET

30 Oct, 13:04


Unreal Engine Toolbar in Visual Studio

DevBlogs | Visual Studio Blog | October 30, 2024

In Visual Studio 2022 version 17.11, we’ve added a new Unreal Engine toolbar to Visual Studio.



The Unreal Engine toolbar is a new feature that provides...

https://devblogs.microsoft.com/visualstudio/unreal-engine-toolbar-in-visual-studio/

Amazing .NET

29 Oct, 18:49


GitHub Copilot in Windows Terminal

DevBlogs | Windows Command Line | October 29, 2024

GitHub Copilot users can now use the power of GitHub Copilot to get command suggestions and explanations without leaving the terminal with Terminal Chat in ...

https://devblogs.microsoft.com/commandline/github-copilot-in-windows-terminal/

Amazing .NET

29 Oct, 18:49


Introducing Microsoft.Extensions.VectorData Preview

DevBlogs | .NET Blog | October 29, 2024

We are excited to introduce the Microsoft.Extensions.VectorData.Abstractions package available in preview today. This new package provides a unified abstraction layer that enables you to integrate vector stores into your .NET applications.

https://devblogs.microsoft.com/dotnet/introducing-microsoft-extensions-vector-data/

Amazing .NET

29 Oct, 16:51


Create Unreal Engine modules faster

DevBlogs | Visual Studio Blog | October 29, 2024

Unreal Engine modules help keep your code organized and modular. However, creating modules can be a tedious and error-prone process that involves manually ...

https://devblogs.microsoft.com/visualstudio/create-unreal-engine-modules-faster/

Amazing .NET

29 Oct, 14:46


Как ускорить сборку Docker-образов в GitLab: стратегии кэширования с Docker Buildx

Хабр | Блог компании Bimeister | 28 октября 2024 г.

Скорость сборки Docker-образов играет важную роль в CI/CD, особенно для микросервисов, где частые обновления и тестирования требуют быстрой доставки изменений.

Одним из решений для оптимизации сборок является Docker Buildx — расширение к стандартной команде docker build. Docker Buildx предлагает дополнительные возможности, такие как кэширование слоев образов, что помогает значительно сократить время сборки за счет повторного использования неизменных слоев. В отличие от стандартного процесса сборки, Docker Buildx предоставляет более гибкое управление кэшем, поддерживает мультиархитектурные сборки и работу с несколькими платформами.

https://habr.com/ru/companies/bimeister/articles/854064/

🏷️ .NET, DevOps, IT-инфраструктура

Amazing .NET

29 Oct, 13:04


Is the result pattern worth it?: Working with the result pattern - Part 4

.NET Escapades | Andrew Lock | October 29, 2024

In this post I show how to extend your LINQ-based result pattern code to handle more scenarios, such as Task> and collections of Result.

https://andrewlock.net/working-with-the-result-pattern-part-4-is-the-result-pattern-worth-it/

🏷️ .NET Core, C#

Amazing .NET

28 Oct, 16:53


Easily add Unreal Engine classes to your C++ project

DevBlogs | Visual Studio Blog | October 28, 2024

Visual Studio 2022 v17.11 introduces a new Add Unreal Engine Class dialog that lets you easily add common Unreal Engine classes to your project. You can also ...

https://devblogs.microsoft.com/visualstudio/easily-add-unreal-engine-classes-to-your-c-project/

Amazing .NET

28 Oct, 14:46


Третье издание книги «ASP.NET Core в действии» в правильном переводе команды DotNetRu

Хабр | Блог компании JUG Ru Group | 28 октября 2024 г.

Привет, на связи лингвисты инженеры сообщества DotNetRu. 3 года назад мы рассказывали о книге «ASP.NET Core в действии». А сегодня мы рады представить третье издание этой полезной и информативной книги.

Как и в прошлый раз, первый вариант перевода был подготовлен силами  издательства «ДМК Пресс», затем практикующие разработчики нашего сообщества перечитали текст, внесли правки, проверили код и рисунки, после чего книга отправилась в печать. Опыт выпуска предыдущих книг уже показал, что такое тесное сотрудничество положительно сказывается на качестве перевода. Ниже краткое содержание книги и несколько слов от команды переводчиков.

https://habr.com/ru/companies/jugru/articles/853728/

🏷️ .NET, C#

Amazing .NET

28 Oct, 13:05


Listing all cloud folders in Windows using .NET

Meziantou's blog | Gérald Barré | October 28, 2024

Windows allows to list the OneDrive folders or folders from other cloud providers. This is done by using the StorageProviderSyncRootManager class. The StorageProviderSyncRootManager class provides a static method called GetCurrentSyncRoots that returns a list of StorageProviderSyncRoot objects, which correspond to the registered cloud folders.

Before using the Windows SDK, you need to update the Target Framework of your project to net8.0-windows10.0.18362.0:

https://www.meziantou.net/listing-all-cloud-folders-in-windows-using-dotnet.htm

🏷️ .NET

Amazing .NET

28 Oct, 08:50


How to Get an Instance of IServiceProvider in .NET

Code Maze | October 28, 2024

In modern .NET applications, dependency injection is a fundamental design pattern that promotes loose coupling and enhances maintainability. At the center of .NET’s dependency injection system lies the IServiceProvider interface, which acts as a service locator for retrieving service instances. Understanding how to obtain and work with an IServiceProvider instance is vital for developers who want to leverage the full power of dependency injection in their applications.

https://code-maze.com/dotnet-get-an-instance-of-iserviceprovider/

Amazing .NET

28 Oct, 04:48


ToArray(Async) vs ToList(Async) in Entity Framework 8

Steven Giesel | October 28, 2024

When retrieving data from your database with Entity Framework, there are two major options: ToArray and ToList. Besides the different return type, is there any significant difference in performance between the two? Let's find out!

https://steven-giesel.com/blogPost/4ec751cd-d773-44c2-996e-cc4ae9ae966c/toarrayasync-vs-tolistasync-in-entity-framework-8

🏷️ EF, Performance

Amazing .NET

27 Oct, 22:46


102 выпуск. Разбираемся с SVE, празднуем STJ, унифицируем AI

RadioDotNet | October 27, 2024

[00:02:05] — .NET 9 Release Candidate 2 is now available 
[00:05:35] — What's new in System.Text.Json in .NET 9 
[00:39:40] — .NET Aspire 9.0 (Release Candidate 1) 
[00:53:30] — Introducing Microsoft.Extensions.AI Preview 
[01:02:10] — Engineering the Scalable Vector Extension in .NET 
[01:13:40] — Understanding OverloadResolutionPriority attribute in C# 13 
[01:23:15] — Кратко о разном 
[01:27:10] — Подслушано 

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/12041961

Слушать на YouTube: https://www.youtube.com/playlist?list=PLbxr_aGL4q3SpQ9GRn2jv-NEpvN23CUC5

Слушать на Mave: https://radiodotnet.mave.digital/ep-103

Поддержать на Boosty: https://boosty.to/radiodotnet

Amazing .NET

27 Oct, 20:46


Как и зачем использовать Template Method в C#

Хабр | Блог компании OTUS | 24 октября 2024 г.

Template Method (он же «Шаблонный метод») — это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.

Классический пример — процесс заказа товара в интернет-магазине. Независимо от того, какой у вас магазин, шаги примерно одинаковые: проверка наличия товара, оплата, упаковка и доставка. Но в зависимости от специфики магазина, эти шаги могут отличаться в деталях.

Template Method позволяет создать базовую структуру этих шагов и менять конкретные реализации без изменения самой структуры. В этой статье мы рассмотрим, как реализовать этот паттерн на C#.

https://habr.com/ru/companies/otus/articles/852996/

🏷️ C#

Amazing .NET

24 Oct, 18:49


.NET Upgrade Assistant Now Supports Upgrading to Centralized Package Mangement

DevBlogs | .NET Blog | October 24, 2024

Learn how to use the .NET Upgrade Assistant tool to upgrade your projects to use NuGet Central Package Management (CPM).

https://devblogs.microsoft.com/dotnet/dotnet-upgrade-assistant-cpm-upgrade/

Amazing .NET

24 Oct, 13:04


Upgrade Your Windows Forms .NET Projects to the Latest .NET Version for Enhanced Security

DevBlogs | Visual Studio Blog | October 24, 2024

Each release of .NET introduces a host of new features and bug fixes that enhance both performance and security. To leverage these benefits both service and...

https://devblogs.microsoft.com/visualstudio/upgrade-your-windows-forms-net-projects-to-the-latest-net-version-for-enhanced-security/

Amazing .NET

23 Oct, 18:48


eShop infused with AI – a comprehensive intelligent app sample

DevBlogs | .NET Blog | October 23, 2024

Go beyond a simple demo app that demonstrates a chat bot and explore a real-world scale application that is infused with AI and illustrates the value of intelligent apps with features like semantic search, summarization, classification, sentiment scoring, chatbot, test data generation, evaluation tool, and E2E testing.

https://devblogs.microsoft.com/dotnet/e-shop-infused-with-ai-comprehensive-intelligent-dotnet-app-sample/

Amazing .NET

23 Oct, 13:03


Get Hands-On with Visual Studio, .NET, AI, and More at Live! 360 next month.

DevBlogs | Visual Studio Blog | October 23, 2024

Visual Studio LIVE! Orlando 2024
November 17-22 | Loews Royal Pacific Resort, Orlando, FL
We’re only four weeks away from the final Visual Studio Live! ...

https://devblogs.microsoft.com/visualstudio/live-360-orlando-2024/

Amazing .NET

22 Oct, 16:50


Update HTML Elements with Htmx Triggers and ASP.NET Core

Khalid Abuhakmeh | October 22, 2024

Let me start by saying that I love the combination of Htmx and ASP.NET Core, and it is a pairing that any .NET developer should consider, whether maintaining an existing application or building a new one. It’s very cool. I was recently talking about revisiting the
hx-trigger and
HX-Trigger header technique with ASP.NET Core on Mastodon with Illya Busigin, and they mentioned they use the same method to update the avatar image when a user updates their profile. So, I thought I’d try and see how to implement it myself.

In this post, we’ll see how to use the
HX-Trigger facility in Htmx to update existing UI elements on a rendered HTML page.

https://khalidabuhakmeh.com/update-html-elements-with-htmx-triggers-and-aspnet-core

🏷️ aspnet, dotnet, htmx

Amazing .NET

22 Oct, 16:50


Обзор нововведений в C# 13

Хабр | Блог компании PVS-Studio | 22 октября 2024 г.

Совсем скоро выйдет новая версия языка C#, а мы продолжаем серию ежегодного обзора нововведений. Изменений в этом году больше, чем в прошлом, что радует. Есть как важные изменения, так и весьма узкоспециализированные. Давайте посмотрим на них более детально.

https://habr.com/ru/companies/pvs-studio/articles/852520/

🏷️ .NET, C#

Amazing .NET

22 Oct, 16:50


.NET MAUI Welcomes Syncfusion Open-source Contributions

DevBlogs | .NET Blog | October 22, 2024

Announcing the release of the Syncfusion Toolkit for .NET MAUI, a set of free, open-source controls for .NET MAUI! Syncfusion has made 14 impressive UI controls freely available for .NET MAUI developers.

https://devblogs.microsoft.com/dotnet/dotnet-maui-welcomes-syncfusion-open-source-contributions/

Amazing .NET

22 Oct, 14:46


Debug CMake Scripts on Linux with Visual Studio

DevBlogs | Visual Studio Blog | October 22, 2024

If you are working on a CMake project that targets Linux, you may have encountered some challenges when trying to debug your CMake scripts and CMakeLists.txt ...

https://devblogs.microsoft.com/visualstudio/debug-cmake-scripts-on-linux-with-visual-studio/

Amazing .NET

22 Oct, 13:03


Adding more extensions to Result<T>: Working with the result pattern - Part 3

.NET Escapades | Andrew Lock | October 22, 2024

In this post I show how to extend your LINQ-based result pattern code to handle more scenarios, such as Task> and collections of Result.

https://andrewlock.net/working-with-the-result-pattern-part-3-adding-more-extensions/

🏷️ .NET Core, C#

Amazing .NET

21 Oct, 18:49


EnJoyTheVR: доступная виртуальная реальность на базе смартфонов

Хабр | 20 октября 2024 г.

Всем привет! Меня зовут Евгений, я разработчик приложения EnJoyTheVR – приложения, которое позволяет погружаться в виртуальную реальность с 6DOF отслеживанием движений головы и рук прямо через ваш смартфон. В этой статье хотел бы рассказать о проекте, его задумке, этапах разработки, а также поделиться положительными и отрицательными моментами.

https://habr.com/ru/articles/852084/

🏷️ AR и VR, C#, Unity, Разработка игр, Смартфоны

Amazing .NET

21 Oct, 18:49


MongoDB EF Core Provider: What’s New?

DevBlogs | .NET Blog | October 21, 2024

The latest updates to the MongoDB EF Core Provider brings updates to change tracking, index creation, complex queries, and transactions.

https://devblogs.microsoft.com/dotnet/mongodb-ef-core-provider-whats-new/

Amazing .NET

21 Oct, 13:04


How to remove diacritics from a string in .NET

Meziantou's blog | Gérald Barré | October 21, 2024

This post is part of the series 'Strings in .NET'. Be sure to check out the rest of the blog posts of the series!

https://www.meziantou.net/how-to-remove-diacritics-from-a-string-in-dotnet.htm

🏷️ .NET

Amazing .NET

21 Oct, 06:50


Entity Framework Core Best Practices

Code Maze | October 21, 2024

Entity Framework Core (EF Core) is an object-relational mapper (ORM), enabling us to work with a database using .NET objects, eliminating much of the data-access code we usually need to write. EF Core supports many databases, including SQL Server, SQLite, PostgreSQL, MySQL, and more, making it highly versatile. While EF Core provides many conveniences, following best practices to ensure our application remains robust, maintainable, and performant is crucial.

Check out our comprehensive Entity Framework Core Series for a deeper dive into EF Core.

https://code-maze.com/entity-framework-core-best-practices/

Amazing .NET

21 Oct, 04:47


Comparing the performance between the Minimal API and classic Controllers

Steven Giesel | October 21, 2024

Today, we are going to benchmark the performance of the Minimal API in ASP.NET 9 (and for reference against ASP.NET 8 as well) against the classic Controllers. We will test a few scenarios and check how the performance of the Minimal API compares to the classic Controllers. Let's get right into it!

https://steven-giesel.com/blogPost/698c45c3-58c5-4157-b4da-2cde4e27862e/comparing-the-performance-between-the-minimal-api-and-classic-controllers

🏷️ .NET, ASP.NET, C#, Controller, Minimal API, Performance

Amazing .NET

18 Oct, 20:46


Что нового в Unity 6? Обзор нововведений и ошибок в исходном коде

Хабр | Блог компании PVS-Studio | 17 октября 2024 г.

Наконец, состоялся релиз Unity 6! Разработчики называют эту версию самой стабильной версией за всё время существования движка. Почему бы нам не убедиться в этом с помощью статического анализатора кода? А заодно проведём краткий обзор основных фич и улучшений, привнесённых обновлением.

https://habr.com/ru/companies/pvs-studio/articles/851434/

🏷️ C#, Unity, Программирование, Разработка игр

Amazing .NET

18 Oct, 16:49


.NET Conf 2024 Student Zone

DevBlogs | .NET Blog | October 17, 2024

The .NET Conf Student Zone is a beginner-friendly, virtual event where experts will teach you how to build amazing projects - all using C# and .NET!

https://devblogs.microsoft.com/dotnet/dotnetconf-2024-student-zone/

Amazing .NET

17 Oct, 20:46


SolidModelBrowser — удобный просмотр STL, 3MF, OBJ, особенно для тех, у кого завёлся 3D принтер

Хабр | 17 октября 2024 г.

Началась эта история с того, что несколько лет назад я купил 3D принтер. Конечно, по началу не представлял толком, как эта технология работает, и насколько прочными и полезными будут его пластиковые изваяния. Однако, быстро натренировавшись и отрегулировав эту машинку, я был удивлён и вполне удовлетворён качеством пластиковых изделий, спайкой слоёв и точностью их геометрических размеров. Конечно, в последствии не обошлось без модернизаций аппарата, но сейчас не об этом.

https://habr.com/ru/articles/851458/

🏷️ .NET, 3D-принтеры, DIY или Сделай сам, Работа с 3D-графикой

Amazing .NET

17 Oct, 15:24


Git Tricks: Get the last checked out branch

Steven Giesel | October 14, 2024

In this blog post I will show you two tricks how to easily switch between a branch back and forth and how to get the last checked out branches.

https://steven-giesel.com/blogPost/bbfb8333-e05a-4de7-88b9-17ac2248d77f/git-tricks-get-the-last-checked-out-branch

🏷️ git

Amazing .NET

16 Oct, 22:46


API Error Messages for a GOOD Developer Experience

CodeOpinion | Derek Comartin | October 16, 2024

Debugging and troubleshooting are a big part of a developer’s day-to-day. Because of this, when designing your APIs, provide good API error messages as well as guide developers down a path of success and makes it easier for them to understand issues when they need to troubleshoot.

https://codeopinion.com/api-error-messages-for-a-good-developer-experience/

🏷️ Software Design

Amazing .NET

16 Oct, 18:49


Improve your debugger game with editable expressions

DevBlogs | Visual Studio Blog | October 16, 2024

Do you ever wish you could quickly test different queries on your collections or datasets while debugging? Do you want to save time and avoid writing code just ...

https://devblogs.microsoft.com/visualstudio/improve-your-debugger-game-with-editable-expressions/

Amazing .NET

16 Oct, 18:49


How we build GitHub Copilot into Visual Studio

DevBlogs | .NET Blog | October 16, 2024

Find out how Visual Studio integrates GitHub Copilot, architectural detail, .NET implementation, and the importance of the indexing service for providing context-aware AI code suggestions.

https://devblogs.microsoft.com/dotnet/building-github-copilot-into-visual-studio/

Amazing .NET

15 Oct, 16:49


What’s new in System.Text.Json in .NET 9

DevBlogs | .NET Blog | October 15, 2024

An overview of all new .NET 9 features in System.Text.Json for developers.

https://devblogs.microsoft.com/dotnet/system-text-json-in-dotnet-9/

Amazing .NET

15 Oct, 13:04


Safety and simplicity with LINQ: Working with the result pattern - Part 2

.NET Escapades | Andrew Lock | October 15, 2024

In this post I show how to clean up unreadable Switch()-based result pattern code using LINQ query syntax, giving both readability and safety.

https://andrewlock.net/working-with-the-result-pattern-part-2-safety-and-simplicity-with-linq/

🏷️ .NET Core, C#

Amazing .NET

14 Oct, 18:48


Catch the highlights from Azure Developers – .NET Aspire Day 2024!

DevBlogs | .NET Blog | October 14, 2024

Watch the top sessions on demand for insights and practical guidance on building distributed applications with .NET Aspire!

https://devblogs.microsoft.com/dotnet/azure-developers-dotnet-aspire-day-recap/

Amazing .NET

14 Oct, 16:50


Исходный код на прощание: разбор ошибок в проектах закрывшейся инди-студии

Хабр | Блог компании PVS-Studio | 14 октября 2024 г.

Инди-студия StarlightLabsCo закрылась, а разработчик и её основатель Харрис Ротаермель опубликовал исходный код своих проектов. Теперь желающие могут улучшать эти проекты или разрабатывать на их основе новые. Мы решили не оставаться в стороне и решили поискать ошибки в его проекте.

https://habr.com/ru/companies/pvs-studio/articles/850454/

🏷️ .NET, C#, Open source, Разработка игр

Amazing .NET

14 Oct, 13:04


Understanding OverloadResolutionPriority attribute in C# 13

Meziantou's blog | Gérald Barré | October 14, 2024

C# 13 adds support for a new attribute: [OverloadResolutionPriority]. This attribute is niche, so most of you won't use it. However, it's a nice addition to the language, and it's worth knowing about it if you are writing libraries.

Let's consider this simple example:

https://www.meziantou.net/understanding-overloadresolutionpriority-attribute-in-csharp-13.htm

🏷️ .NET

Amazing .NET

14 Oct, 06:50


How to Prevent Concurrent Execution of a Hangfire Job

Code Maze | October 14, 2024

In this article, we will see how we can prevent the concurrent execution of a Hangfire job. Hangfire is a wonderful tool for scheduling recurring background jobs. But, if we are not careful, we can encounter strange or intermittent errors caused by concurrent execution of a given job.

We will first discuss potential problems related to concurrent job execution and then present different solutions for addressing the issue.

https://code-maze.com/aspnetcore-prevent-concurrent-execution-of-a-hangfire-job/

Amazing .NET

13 Oct, 16:47


Название имеет значение: как отладить Blazor WebAssembly приложение, переименовав браузер

Хабр | 12 октября 2024 г.

У нашей команды появилась необходимость отлаживать Blazor WebAssembly приложения в Яндекс.Браузере. Но возникла проблема: Visual Studio упорно не хотел вставать на точки останова. Таких проблем не было ни с Edge, ни с Chrome, хотя все три браузера основаны на Chromium. Полез разбираться, как и что там происходит, хотя в успех особо не верил.

https://habr.com/ru/articles/850234/

🏷️ .NET, C#

Amazing .NET

10 Oct, 18:49


Engineering the Scalable Vector Extension in .NET

DevBlogs | .NET Blog | October 10, 2024

Let's take an in-depth look at how the team implemented the Scalable Vector Extension (SVE) for .NET.

https://devblogs.microsoft.com/dotnet/engineering-sve-in-dotnet/

Amazing .NET

10 Oct, 14:46


18 выпуск. Корпоративная политика

Бреслав и Ложечкин | October 10, 2024

Обсудили таинственную, загадочную и непонятную "корпоративную политику": что это такое, как она возникает, как с ней бороться (и надо ли), как в ней выживать. Спойлер: корпоративная политика — естественная для человеческой природы и важно её "правильно готовить". 

Упомянутые в подкасте артефакты:
— Книга Patrick Lencioni "The Five Dysfunctions of a Team"https://amzn.eu/d/0ebpj3FD

Слушать на Яндекс.Музыке: https://music.yandex.ru/album/25789910

Слушать на YouTube: https://www.youtube.com/playlist?list=PLNSmyatBJig64AjlwZrYIgjPwiTsHQNf_

Слушать на Mave: https://breslav-lozhechkin.mave.digital/ep-18

Обсудить выпуск: https://t.me/breslavandlozhechkin

Amazing .NET

10 Oct, 06:49


Publish MediatR Notifications in Parallel

Code Maze | October 10, 2024

In this article, we will explore how publishing MediatR notifications in parallel works. Also, we will dive into the advantages and possible pitfalls of using parallel publishing.

https://code-maze.com/mediatr-parallel-publishing-notifications/

Amazing .NET

09 Oct, 22:46


Announcing TypeScript 5.7 Beta

DevBlogs | TypeScript | October 9, 2024

Today we are announcing the availability of TypeScript 5.7 Beta.
To get started using the beta, you can get it through npm with the following command:

Let's...

https://devblogs.microsoft.com/typescript/announcing-typescript-5-7-beta/

Amazing .NET

09 Oct, 22:46


Web-Queue-Worker Architecture Style for Scaling

CodeOpinion | Derek Comartin | October 9, 2024

Web-Queue-Worker is an excellent architecture pattern you can add to your toolbox. It’s just a pattern and can work with a monolith, modular monolith, microservices, or whatever. It provides many benefits for scaling by moving work into the background and if you have long-running jobs, workflows, or even recurring batch jobs.

https://codeopinion.com/web-queue-worker-architecture-style-for-scaling/

🏷️ Architecture

Amazing .NET

09 Oct, 16:49


Easier localization with the new resource (.resx) manager

DevBlogs | Visual Studio Blog | October 9, 2024

If you're developing applications that target multiple languages and cultures, you probably know how challenging it can be to manage the resources for each ...

https://devblogs.microsoft.com/visualstudio/easier-localization-with-the-new-resource-resx-manager/