August 23, 2017
  1536
Let's encrypt provides free SSL certificates. Get yours for your ASP.NET Core web site!
August 22, 2017
  1668
Next up in our ASP.NET Core Demystified series, we will discuss and demo a whole bunch of classes which implement the IActionResult interface and inherit from the corresponding ActionResult class. These classes are used as responses from controller actions, and include redirecting to another site, redirecting to a different
August 21, 2017
  1819
A couple things to consider when implementing HTTP to HTTPS redirect for an ASP.NET Core application running in Web App on Linux - Azure App Service. -Since you are using the .NET Core server to process requests, configuring a redirect rule in .htaccess won't work the way it does with sites that are closely coupled...
August 21, 2017
  1798
.NET Standard is one of many new technologies to emerge from the mass of open source .NET initiatives during the past year. Compared to what's come before, ....
August 21, 2017
  2302
Today we are going to create small accounting web application which will consist of 4 extensions: Barebone, Incomes, Expenses, and Balance. UI and data model will be modular too.
August 21, 2017
  1910
We have a new Rider EAP build for you today. Highlights of this build include performance and memory consumption fixes, Unity support improvements, and F# Interactive, accompanied by a few dozens of bug fixes. Performance fixes Last week, we were … Continue reading →
August 19, 2017
  1458
Scott Addie discusses how to use two new ASP.NET Core tools for building reusable UI components: Tag Helpers and View Components.
August 19, 2017
  1436
Stratis Group releases powerful and user friendly tools for C# developers to build blockchain apps on .Net Core using C#. Learn more at the C# Corner Conference 2017.
August 19, 2017
  1812
Microsoft is changing the positioning and feature set of Nano Server with the coming fall feature release of Windows Server 2016. Here's what to expect.
August 19, 2017
  1848
tl;dr Use Span to work with ANY kind of memory in a safe and very efficient way. Simplify your APIs and use the full power of unmanaged memory! Contents Introduction Introduction C# gives us great flexibility when it comes to using different kinds of memory. But the majority of the developers use only the managed one. Let’s take a brief look at what C# has to offer for us: Stack memory - allocated on the Stack with the stackalloc keyword. Very fast allocation and deallocation. The size of the Stack is very small (usually < 1 MB) and fits well into CPU cache. But when you try to allocate more, you get StackOverflowException which can not be handled and immediately kills the entire process. Usage is also limited by the very short lifetime of the stack - when the method ends, the stack gets unwinded together with its memory. Stackalloc is commonly used for short operations that must not allocate any managed memory. An example is very fast logging of ETW events in corefx: it has to be as fast as possible and needs very little of memory (so the size limitation is not a problem). internal unsafe void BufferRented(int bufferId, int bufferSize, int poolId, int bucketId) { EventData* payload = stackalloc EventData[4]; payload[0].Size = sizeof(int); payload[0].DataPointer = ((IntPtr)(&bufferId)); payload[1].Size = sizeof(int); payload[1].DataPointer = ((IntPtr)(&bufferSize)); payload[2].Size = sizeof(int); payload[2].DataPointer = ((IntPtr)(&poolId)); payload[3].Size = sizeof(int); payload[3].DataPointer = ((IntPtr)(&bucketId)); WriteEventCore(1, 4, payload); } Unmanaged memory - allocated on the unmanaged heap (invisible to GC) by calling Marshal.AllocHGlobal or Marshal.AllocCoTaskMem methods. This memory must be released by the developer with an explicit call to Marshal.FreeHGlobal or Marshal.FreeCoTaskMem. By using it we don’t add any extra pressure for the GC. It’s most commonly used to avoid GC in scenarios where you would normally allocate huge arrays of value types without pointers. Here you can see some real-life use cases from Kestrel. Managed memory - We can allocate it with the new operator. It’s called managed because it’s managed by the Garbage Collector (GC). GC decides when to free the memory, the developer doesn’t need to worry about it. As described in one of my previous blog posts, the GC divides managed objects into two categories: Small objects (size < 85 000 bytes) - allocated in the generational part of the managed heap. The allocation of small objects is fast. When they are promoted to older generations, their memory is usually being copied. The deallocation is non-deterministic and blocking. Short-lived objects are cleaned up in the very fast Gen 0 (or Gen 1) collection. The long living ones are subject of the Gen 2 collection, which usually is very time-consuming. Large objects (size >= 85 000 bytes) - allocated in the Large Object Heap (LOH). Managed with the free list algorithm, which offers slower allocation and can lead to memory fragmentation. The advantage is that large objects are by default never copied. This behavior can be changed on demand. LOH has very expensive deallocation (Full GC) which can be minimized by using ArrayPool.

Hot Vacancies

Middle / Senior Full-Stack .NET developer

Springdel
.NET

The project aims to change the shape of the healthcare market making it easier to find affordable services.

Middle .NET Developer

MyCredit
.NET

MyCredit is a space with a huge soul and a pleasant atmosphere. We are a product company, a leader in the microcredit market with 4 years of experience! We are included in the Top 3 FinTech and e-commerce projects of the country! We believe in the potential of each person, in his talent and desire to develop, and we also believe in respect and support. Therefore, we have assembled a team of guys who share our faith and go forward with us. If all this is about you, be sure to read it to the end! Our team of professionals is rapidly gaining momentum, and now we are looking for a Middle .NET Developer who will be interested in working with BPM Corezoid.

Lead .NET Developer

MyCredit
.NET

MyCredit is a space with a huge soul and a pleasant atmosphere. We are a product company, a leader in the microcredit market with 4 years of experience! We are entering the Top 3 FinTech and e-commerce projects of the country! We believe in the potential of each person, in his desire to develop, and we also believe in respect and support. Therefore, we have assembled a team of guys who share our faith and go forward with us. If all this is about you, be sure to read it to the end! Our team of professionals is rapidly gaining momentum, and now we are looking for a Lead .NET Developer to work on a high-load project.

Backend Developer

Oneview Healthcare
.NET

Oneview Healthcare is a global company, working with hospitals and senior care facilities around the world.

Senior .NET Developer

.NET

We are looking for Senior .Net Developer to join Kiev team. You will be part of a team of strong, result-oriented professionals developing new generation tasks management, people management, learning platform.