Cannot add duplicate collection entry of type 'add' with unique key attribute 'name' set to 'aspNetCore

Phill Wiggins picture Phill Wiggins · Oct 16, 2016 · Viewed 25.7k times · Source

I have recently published my ASP.NET Core application to my host. I am hitting a HTTP Error 500.19.

IIS 8.5 says the issue is:-

"Cannot add duplicate collection entry of type 'add' with unique key attribute 'name' set to 'aspNetCore'"

It also highlights this key add line in my system.webServer config:-

<handlers>
  <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule"      
</handlers>

I'm not really sure what to do on this. It looks as though there is a duplicate instance of this, so I have tried renaming this but it still asks to add this again?

Here is my web.config:-

<?xml version="1.0" encoding="utf-8"?>
<configuration>

  <!--
  Configure your application settings in appsettings.json. Learn more at http://go.microsoft.com/fwlink/?LinkId=786380
  -->

  <system.webServer>
  <handlers>
    <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
  </handlers>
  <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>
  </system.webServer>

<system.net>
<defaultProxy useDefaultCredentials="true" >
</defaultProxy>
</system.net>
</configuration>

Answer

Brian S picture Brian S · Feb 28, 2018

The answer above didn't work for me, however DavidG's comment did solve my problem, so going to post as an answer in case it helps someone else.

For me, I was not running it as a sub-application, and a project that had been working for me no issue for over a year suddenly stopped working with this issue. Still not sure what changed. When I commented out or removed the <add name="aspNetCore".../> the error persisted, and then that line got automatically re-added.

To solve the problem, I added <remove name="aspNetCore" /> to the config file, right above the <add name="aspNetCore"... /> entry, and things started working again.