Pull to refresh
80.06
Rating

.NET *

A hub about .NET

Show first
Rating limit

What Is yield and How Does It Work in C#?

PVS-Studio corporate blog Programming *.NET *C# *Development for Windows *

C# capabilities keep expanding from year to year. New features enrich software development. However, their advantages may not always be so obvious. For example, the good old yield. To some developers, especially beginners, it's like magic - inexplicable, but intriguing. This article shows how yield works and what this peculiar word hides. Have fun reading!

Read more
Total votes 2: ↑1 and ↓1 0
Views 1.4K
Comments 0

A Spy Undercover: PVS-Studio to Check ILSpy Source Code

PVS-Studio corporate blog Programming *.NET *C# *

In PVS-Studio, we often check various compilers' code and post the results in our blog. Decompiler programs, however, seem to be a bit neglected. To restore justice in this world, we analyzed the ILSpy decompiler's source code. Let's take a look at the peculiar things PVS-Studio found.

Читать далее
Rating 0
Views 670
Comments 0

C# Programmer, It's Time to Test Yourself and Find Error

PVS-Studio corporate blog Programming *.NET *C# *

The PVS-Studio analyzer is regularly updated with new diagnostic rules. Curiously enough, diagnostics often detect suspicious code fragments before the end of the work. For example, such a situation may happen while testing on open-source projects. So, let's take a look at one of these interesting finding.

Read more
Rating 0
Views 1K
Comments 0

Top-10 Bugs Found in C# Projects in 2020

PVS-Studio corporate blog Programming *.NET *C# *
image1.png

This tough year, 2020, will soon be over at last, which means it's time to look back at our accomplishments! Over the year, the PVS-Studio team has written quite a number of articles covering a large variety of bugs found in open-source projects with the help of PVS-Studio. This 2020 Top-10 list of bugs in C# projects presents the most interesting specimens. Enjoy the reading!
Read more →
Total votes 1: ↑0 and ↓1 -1
Views 1.1K
Comments 0

Rich text editors from backend perspective

Website development *.NET *HTML *Angular *Data visualization *
Welcome everyone, in this article I’m going to overview the most popular types of rich text editors, tradeoffs of their use from a backend perspective. By that I mean:

  • Streaming of content from the rich text editor to other infrastructure tools like full-text search, warehouses, etc.
  • Retrieving of content to clients: mobile, web, desktop.
  • Storing of content in some kind of storage (SQL database in my case)
  • Analyzing of content, which includes point 1, but also analyzing it from the perspective of our application
Read more →
Total votes 1: ↑0 and ↓1 -1
Views 2.8K
Comments 2

ONLYOFFICE Community Server: how bugs contribute to the emergence of security problems

PVS-Studio corporate blog Information Security *Open source *.NET *C# *
image1.png

Server-side network applications rarely get the chance to join the ranks of our reviews of errors found in open source software. This is probably due to their popularity. After all, we try to pay attention to the projects that readers themselves offer us. At the same time, servers often perform very important functions, but their performance and benefits remain invisible to most users. So, by chance, the code of ONLYOFFICE Community Server was checked. It turned out to be a very fun review.
Read more →
Total votes 4: ↑3 and ↓1 +2
Views 810
Comments 2

Development of “YaRyadom” (“I’mNear”) application under the control of Vk Mini Apps. Part 1 .Net Core

PostgreSQL *.NET *API *C# *
Translation
Application is developed in order to help people find their peers who share similar interests and to be able to spend some time doing what you like. The project is currently on the stage of beta-testing in the social network “VKontakte”. Right now I am in the process of fixing bugs and adding everything that is missing. I felt like I could use a bit of destruction and decided to write a little about the development. While I was writing, I decided to divide the text into different parts. Here we are going to pay more attention to backend nuances which I faced, and to everything that a user does not see.
Read more →
Rating 0
Views 628
Comments 0

Analyzing the Code Quality of Microsoft's Open XML SDK

PVS-Studio corporate blog Open source *.NET *C# *Development for Office 365 *
image1.png

My first encounter with Open XML SDK took place when I was looking for a library that I could use to create some accounting documents in Word. After more than 7 years of working with Word API, I wanted to try something new and easier-to-use. That's how I learned that Microsoft offered an alternative solution. As tradition has it, before our team adopts any program or library, we check them with the PVS-Studio analyzer.
Read more →
Total votes 5: ↑2 and ↓3 -1
Views 798
Comments 1

Jupyter for .NET. «Like Python»

.NET *C# *Mathematics *F# *
Translation
A few months ago Microsoft announced about the creation of Jupyter for .NET. However, people are barely interested in it despite how attractive the topic is. I decided to make a LaTeX wrapper for the Entity class from a symbolic algebra library:



Looks awesome. Is simple. Very enjoyable. Let's see more!
Read more →
Total votes 2: ↑2 and ↓0 +2
Views 1.6K
Comments 0

Check how you remember nullable value types. Let's peek under the hood

PVS-Studio corporate blog .NET *C# *
image1.png

Recently nullable reference types have become trendy. Meanwhile, the good old nullable value types are still here and actively used. How well do you remember the nuances of working with them? Let's jog your memory or test your knowledge by reading this article. Examples of C# and IL code, references to the CLI specification, and CoreCLR code are provided. Let's start with an interesting case.
Read more →
Rating 0
Views 735
Comments 0

Aspect-Oriented Programming (AOP) by source-level weaving

.NET *C# *
image

Aspect-oriented programming is a very appealing concept for simplifying your codebase, creating clean code, improving modularity, structure of code and minimizing copy-paste errors.

Today, in most cases, weaving aspect's advices is implemented at the bytecode level, i.e. after compilation, a certain tool «weave» an additional byte code with the support of the required logic.

Our approach (as well as the approach of some other tools) is modifying the source code to implement aspect logic. With introduction of the .NET Compiler Platform (aka Roslyn), it is quite easy to achieve this goal, and the result gives certain advantages over the modification of the byte code itself.
Read more →
Rating 0
Views 1.2K
Comments 0

Data Science vs AI: All You Need To Know

.NET *Angular *DevOps *Artificial Intelligence Data Engineering *

What do these terms mean? And what is the difference?


image

Data Science and Artificial Intelligence are creating a lot of buzzes these days. But what do these terms mean? And what is the difference between them?

While the terms Data Science and Artificial Intelligence (AI) comes under the same domain and are inter-connected to each other, they have their specific applications and meaning.

There’s no slowing down the spread of AI and data science. Many big tech giants are extensively investing in these technologies. As per the recent survey, it is estimated that artificial intelligence could add $15.7 trillion to the global economy by 2030.

Through this piece of writing, I will be explaining about the AI and data science concepts and their differences in detail. So, without wasting any more time, let’s get started!
Read more →
Total votes 1: ↑1 and ↓0 +1
Views 1.6K
Comments 1

Tree Structure in EF Core: How to configure a self-referencing table and use it

.NET *C# *
Tutorial

One of the very common questions I am getting from .NET community is how to configure and use the tree structures in EF Core. This story is one of the possible ways to do it.


The common tree structures are file tree, categories hierarchy, and so on. Let it be folders tree for example. The entity class will be a Folder:


public class Folder
{
    public Guid Id { get; set; }
    public string Name { get; set; }      
    public Folder Parent { get; set; }
    public Guid? ParentId { get; set; }
    public ICollection<Folder> SubFolders { get; } = new List<Folder>();
}
Read more →
Total votes 1: ↑1 and ↓0 +1
Views 17K
Comments 1

Critical Transcendence: .NET SDK and Apache Spark

.NET *Microsoft SQL Server *Apache *Microsoft Azure *Machine learning *

When Alex Garland’s series Devs (on FX and Hulu) came out this year, it gave developers their own sexy Hollywood workup. Who knew that coders could get snarled into murder plots and love triangles just for designing machine learning programs? Or that their software would cause a philosophical crisis? Sure, the average day of a developer is more code writing than murder but what a thrill to author powerful new program.


Read more →
Rating 0
Views 645
Comments 1

How to find errors in a C# project working under Linux and macOS

PVS-Studio corporate blog .NET *C# *Development for MacOS *Development for Linux *

Picture 8

PVS-Studio is a well-known static code analyzer that allows you to find a lot of tricky errors hidden in the source code. Beta testing of the new version has recently finished. It provides the possibility to analyze C# projects under Linux and macOS. The tool can also be integrated into the cross-platform IDE from JetBrains — Rider. This article will help you to get acquainted with these features using the example of checking the open source RavenDB project.
Read more →
Rating 0
Views 522
Comments 0

Authors' contribution