Registering application in Azure Active Directory

What does it actually means – to register an application with Azure Active Directory tenant? Well, this created an Application ID for the application (you will be using this ID in your application) and enables it to receive tokens. This basically provides secure sign-in and authorization for the users which will use your application. Registration You’ve develop great applicatio…

By Dawid on (tags: active, application, azure, directory, registration, tenant, categories: azure)

Your first Azure Active Directory tenant

In this short blog I will demonstrate how to create your first Azure AD tenant. Next blog post will describe how to use this tenant with your application. The definition on Microsoft page says that Azure Azure Active directory is: Azure Active Directory (Azure AD) is Microsoft’s multi-tenant, cloud based directory and identity management service. Azure AD combines core director…

By Dawid on (tags: active, azure, directory, categories: azure)

TFS 2017 Removing orphaned workspace with pending changes

After we migrated our TFS 2010 installation to latest TFS 2017 it turned out that there are some conflicts with the workspaces. Here is a simple solution how to handle such problems. The conflicts was mostly due to the facts that together with TFS migration we also created new account for all contributors. Old accounts were abandoned but the glorious TFS version control still h…

By Mirek on (tags: TF, TFS 2017, categories: tools, infrastructure)

Replace all magic string with just one regex

Today I am going to show you how to use a regular expression with back reference matching to quickly replace all occurrences of magic strings to strong type names. In my WPF project I had a method which was connected to the INotifyPropertyChanged interface and notified the WPF binder whenever a property on my model was changed. This method took as a parameter the name of the pr…

By Mirek on (tags: INotifyPropertyChanged, nameof, regex, visual studio, categories: tools)

Handling builds via Team Foundation Server 2017 REST API

In this post I am going to show you how to utilize the new TFS 2017 REST API. In particular you will see how easy is to list, queue and manage builds for your team project. The plan is to Authorize to TFS 2017 on premise and connect to its web rest api. Get a list of team projects For particular team project get a list of build definitions Queue particular build definition Chec…

By Mirek on (tags: build, HttpClient, REST, tfs, categories: infrastructure, web)

Signing ClickOnce with password protected PFX certificate

This time I had to find out how to make the TFS build step use a PFX certificate file to sign the ClickOnce manifest. It turned out to be quite a tricky task though. But let me first describe the situation. Normally when you want to sign the ClickOnce manifests you need to go the the project properties in Visual Studio and in Signing tab provide an appropriate certificate The c…

By Mirek on (tags: certificate, ClickOnce, deployment, Mage.exe, tfs, categories: tools, infrastructure)

WPF app crashes after migration to TFS 2017

Recently we’ve migrated our projects repository from TFS 2010 to TFS 2017. Unfortunately it soon turned out that WPF projects doesn’t cooperate with new TFS. Well, actually they did cooperate well with TFS but didn’t cooperate with the User. The build process went well with no warnings and the application was properly deployed. However after the app was deployed and we wanted t…

By Mirek on (tags: AssemblyVersion, msbuild, resource dictionary, TFS 2017, WPF, XAML, categories: architecture, tools)

New feature of .NET Core 2 – Razor Pages

If you are looking for another way of building web applications then Razor Pages are for you! Razor Pages are page based programming model for ASP.NET Core MVC and they makes page focused scenarios easier and more productive. Razor pages are enabled by default in MVC and you don’t have to modify your Startup.cs code in any way. Assembly in which razor pages feature – – should b…

By Dawid on (tags: .NET Core 2.0, Pages, razor, categories: code)

Usage of response compression in ASP.NET Core 1.1

When you’ve limited network bandwidth or you are unable to use the Dynamic Compression module in IIS then ASP.NET Core 1.1 comes with rescue. ASP.NET Core team provides a middleware to handle response compression. All modern browsers support multiple compression schemes such as deflate and gzip. Using this feature in your web application can improve overall user experience. Pac…

By Dawid on (tags: compression, middleware, .NET Core 1.1, response, categories: code)

Upload custom build task after TFS 2017 Update 1

Over a year ago I’ve posted a guide on how to upload a custom build task to Team Foundation Server 2015. The solution was based on a TFS REST api which allowed to manipulate build tasks easily. Things have changed since then unfortunately… Now in TFS 2017 after Update 1 this option is not available any more. The REST API is still there and you can get the json definition of the…

By Mirek on (tags: build, tfs, vNext, categories: tools, infrastructure)