Category Archives: General .NET

Issues related to general .NET and C# development

Sitecore 9 Configuration not available on Dependency Injection – LockRecursionException: Recursive upgradeable lock acquisitions not allowed in this mode

Form Sitecore 8.2, Sitecore have implemented Dependency Injection for their own classes. Sitecore uses Microsoft’s Dependency Injection library. Sitecore uses dependency injection to inject many things, including configurations. Therefore, you cannot access configuration before after your code have been injected. … Continue reading

Posted in .net, c#, General .NET, Sitecore 8, Sitecore 9 | Tagged , , , | Leave a comment

In Sitecore 9, the ProxyDisabler have been retired completely

Sitecore have finally retired the ProxyDisabler in Sitecore 9. Proxy items were the early version of item cloning and were deprecated in Sitecore 6. And now the ProxyDisabler have been removed. There are no replacement. All you need to do … Continue reading

Posted in c#, General .NET, Sitecore 5, Sitecore 6, Sitecore 7, Sitecore 8, Sitecore 9 | Tagged , | Leave a comment

Sitecore 9 Tracker.Current.Session.Identify is replaced with Tracker.Current.Session.IdentifyAs

In Sitecore 9, Sitecore have decided to change how you identify named users, i.e. how you match a Contact with a user that is logged into your website. The  Tracker.Current.Session.Identify method is obsolete. It has been replaced with Tracker.Current.Session.IdentifyAs: The IdentifyAs() … Continue reading

Posted in c#, General .NET, Sitecore 9 | Tagged , , , , , | 1 Comment

Sitecore publish:end and publish:end:remote

In Sitecore, you have several ways of executing code after a publish. The publish:end and publish:end:remote events are the 2 most obvious choices. There is a little confusion as to when in the publish pipeline these events are fired. In … Continue reading

Posted in c#, General .NET, Sitecore 7, Sitecore 8, Sitecore 9 | Tagged , , | Leave a comment

Using C# HttpClient from Sync and Async code

The .NEt 4.5 C# System.Net.Http.HttpClient() is a very nice http client implementation, but can be tricky to use if you (like me) are not a trained asynchronous programming coder. So here is a quick cheat sheet on how to work … Continue reading

Posted in .net, c#, General .NET | Tagged , , | Leave a comment

C# Using Newtonsoft and dynamic ExpandoObject to convert one Json to another

The scenario where you convert one input Json format to another output Json is not uncommon. Before C# dynamic and ExpandoObject you would serialize the input Json to POCO model classes and use a Factory class to convert to another … Continue reading

Posted in c#, General .NET | Tagged , , , | Leave a comment

.NET Session state is not thread safe

When working with the .NET session state you should bear in mind that the HttpContext.Current.Session cannot be transferred to another thread. Imagine that you, from the Global.asax would like to read the SessionID each time a session is started: To … Continue reading

Posted in .net, c#, General .NET | Tagged , , , , , , | Leave a comment

Webhook Event Receiver with Azure Functions

Microsoft Azure Functions is a solution to run small pieces of code in the cloud. If your code is very small and have only one purpose, an Azure Function could be the cost effective solution. This is an example of … Continue reading

Posted in .net, c#, General .NET, Microsoft Azure | Tagged , , , | Leave a comment

Requesting Azure API Management URL’s

The Azure API Management is a scalable and secure API gateway/proxy/cache where you can expose your API’s externally and still have secure access. In Azure API Management you create a “Product” which is a collection of API’s that is protected … Continue reading

Posted in c#, General .NET | Tagged , , , | Leave a comment

Sitecore ContentSearch – Get items from SOLR or Lucene – A base class implementation

Reading items from Sitecore is pretty straight forward: And it is fast, unless you need to retrieve items from many paths, or need to retrieve every child of a certain base class. In these situations you resolve to using the … Continue reading

Posted in .net, c#, General .NET, Sitecore 7, Sitecore 8 | Tagged , , , , , , | 2 Comments