Writing TFS Administration Book

Hello All

I have been working with various clients on Team Foundation Server implementations, for a long time. Implementation varies from Version Management to complete DevOps. I have faced many hurdles in my journey; resulted new learning and experience. I have already published an article on the work item customization in Simple-Talk.


TFS Administration involves various facts from installation and configuration till access management and integrations. I have been working on listing down the topics for my new book since few weeks. I have published the topics and the unedited version of the first chapter in LeanPub.


I will be adding more and more chapters to make the TFS Administration book to a complete guide for the TFS Administrators.

Share your thoughts and the topics you are interested to see as part of this book.

Posted in Book, General | Tagged , | Leave a comment

Visual Studio 2015: DNX

DNX or the .NET Execution Runtime is a software development kit and runtime environment that has everything you need to build and run .NET applications for Windows, Mac and Linux. DNX is built for running cross-platform ASP.NET web applications; but it can run other type of applications like console application. When you create an ASP.NET web application using Visual Studio 2015, DNX references will be added by default. This will allow us to develop the web application on Windows and deploy it in Mac system.

DNX not only support the Cross-platform .NET development and deployment, but also support the open source projects. With DNX projects you can easily replace an existing dependency with its source code and let DNX compile it in-memory at runtime.

Posted in Visual Studio 2015 | Tagged | Leave a comment

Visual Studio 2015: C# 6.0 Null-conditional Operator

NullReference exception is one of the main exceptions most of the code blocks return. For handling the same, we will verify most of the object is null or not before accessing the properties or elements of the object.

if (emps != null)
Console.WriteLine(“Number of Employees {0} “, emps.Count());

C# 6 introduced a new operator to handle the null verification. We can re-write the above statement as

Console.WriteLine(“Number of Employees {0} “, emps?.Count());

If the emps object is null, then return null; otherwise return the count of elements. If you want to return 0 in case of null, then the statement looks like

Console.WriteLine(“Number of Employees {0} “, emps?.Count()??0);

We can use the new null-conditional operator with chain statements like

Console.WriteLine(“Order Count {0} “, products?[0].Orders?.Count());

Above statement get the first product, if the products collection is not null and get the count of orders, if there is any orders exists. Otherwise, it returns null.

Posted in C#, Visual Studio 2015 | Tagged , | Leave a comment

Visual Studio 2015: Connected Services

Modern web applications, especially cloud based applications require to integrate with various online services like Azure storage, Salesforce, and so on. Normally, we configure the service details to our application manually. Visual Studio 2015 added a new dialog for handling the integration with various services and configuration of the same.

Right click on References under Solution explorer and select Add Connected Service option from context menu

Add Connected Service

This will open the Add Connected Service window with available services. You can find more services by selecting Find more services link.

Add Connected Service

Click on Configure to invoke the configuration window for the service.

We can develop provider services, which will be listed under connected services using the Connected Services SDK.


Posted in Visual Studio 2015 | Tagged , | Leave a comment

Visual Studio 2015: Shared Project

Shared Project is one of the new features added to Visual Studio 2015. With Shared project, we can share our common code with many different type of applications like Console application, Windows app, Web application, Windows 8.1 app or Windows 8.1 Phone app, Silverlight and so on. Not only c# codes, we can share JavaScript, CSS and other kind of codes too.

There is another similar feature introduced in Visual Studio 2013, called Portable Class Library (PCL). Portable Library is also can be used by different project types. The main difference between these two kind of sharing options are:

  1. Shared Project share the code; whereas Portable Class Library share assembly(dll)
  2. Shared Project will not create any separate assembly; it will get compiled as part of the referring application. PCL compiles separately and add the dll reference to the referring project
  3. As shared projects are not precompiled, it can use with any kind of platform. PCL compiles in advance and won’t work with all platforms
  4. Shared Project share C# code as well as other types like JavaScript, CSS and so on.

Utilize the Shared Project in your solution to share the code and files among multiple projects. Create Shared Project using the “Shared Project” project template.

Posted in Visual Studio 2015 | Tagged | Leave a comment