After upgrading to Beta 8, debugging using the windows authentication doesn't work in IIS Express. I am getting an error
"An error occurred attempting to determine the process id of the DNX process hosting your application."
Steps to reproduce:.
I am using new installation of Windows and Visual Studio. Do I need to download any additional software apart from the installation files?
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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With