If you have been using ASP.Net Core pre RTM release then you might have been using the Microsoft.AspNetCore.StaticFiles dependency to serve up static content from your ASP.Net web application.
If you have been using the latest stable version of this dependency 1.0.0 then you may come across an issue when using the RTM release of ASP.Net Core.
With the RTM release and Update 3 for Visual Studio 2015 we now have a Program.cs with a Main() entry point to our application added to our project when we create a new web application.
public class Program
public static void Main(string args)
var host = new WebHostBuilder()
As you can see there is a .UseContentRoot extension method that gets called setting the content root of our application to the current directory.
To use static files we still need need to reference the Microsoft.AspNetCore.StaticFiles dependency but we must use the pre-release version 1.0.0-rc2-final or we will get the following error.
Error CS0121 The call is ambiguous between the following methods or properties: ‘Microsoft.AspNetCore.Hosting.WebHostBuilderExtensions.UseContentRoot(Microsoft.AspNetCore.Hosting.IWebHostBuilder, string)’ and ‘Microsoft.AspNetCore.Hosting.HostingAbstractionsWebHostBuilderExtensions.UseContentRoot(Microsoft.AspNetCore.Hosting.IWebHostBuilder, string)’
The reason is that the WebHostBuilderExtensions class that contains the UseContentRoot method has been moved to the Microsoft.AspNetCore.Hosting assembly and if you reference version 1.0.0 and not 1.0.0-rc2-final version of the Microsoft.AspNetCore.StaticFiles assembly then you will get an ambiguous reference between these namespaces.
To setup static file serving correctly with RTM just add a dependency to 1.0.0-rc2-final version of Microsoft.AspNetCore.StaticFiles and then add the following in your Startup.cs.
public void Configure(IApplicationBuilder app)
You can see the updated documentation for static files here:
I was playing around with the new tag helper functionality in MVC 6 and decided to put together a quick tutorial on how to create custom tag helpers for your own MVC 6 projects.
I was targeting the ASP.Net Core 1.0 framework in this video but it also applies to .Net 4.6 framework with MVC 6.
I was never really a fan of mixing markup and code within Razor views and I believe tag helpers are a much nicer way to separate out code a functionality in your web projects.
Inevitably you will want to secure your web service layer at some point and if your are building on the Azure platform, then Azure AD is a great OAuth solution.
It is especially a good solution if you are building SharePoint Add-Ins in Office 365. When you are logged into your Office 365 SharePoint site you have already authenticated against your Azure AD and as long as you deploy your applications to the same Azure AD instance then you get automatically authenticated when accessing your Web API layer.
The general architecture looks like this.
The first video is up and it shows how to create a SQL Azure database, create a Web API layer and how to model and scaffold the data using Entity Framework.