As noted in the comments, there is an open tooling issue for this bug. In the mean time, I've been able to successfully debug using WebListener which needs the following two changes:
In Startup.cs
using Microsoft.AspNet.Http.Features;
using Microsoft.Net.Http.Server;
and in the Configure
method add:
var listener = app.ServerFeatures.Get<WebListener>();
if (listener != null)
{
listener.AuthenticationManager.AuthenticationSchemes = AuthenticationSchemes.NTLM;
}
In project.json
add a new weblistener command as follows:
"commands": {
"weblistener": "Microsoft.AspNet.Server.WebListener --config hosting.ini",
"web": "Microsoft.AspNet.Server.Kestrel"
},
and ensure you have WebListener in your dependencies
section
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta8",
As I was upgrading from beta 7, I had to change my hosting.ini file into json format - don't know if that's important or not!
Once this is done, you should be able to debug using weblistener instead of IIS Express. Using web (i.e. kestrel) to debug does not work, as kestrel does not (and will not) support NTLM authentication.
I found that if I changed the "web" command directly in project.json, Visual Studio helpfully changes it back to kestrel rather aggressively, so adding a separate command as recommended by the Microsoft team seems to keep everything happy.