I have inherited some maintenance tasks on an older ASP.Net Web Site (not web project). One of the tasks I’m working on is updating all vulnerable libraries. This has been mostly smooth except for the Microsoft.IdentityModel libraries that are used for authentication. Currently the application is on version 5.3.0 and I’m just trying to get it to 5.7.0, which is the latest fully patched version in the 5.x.x line.
After updating these packages to 5.7.0, either by NuGet or just manually copying DLLs, I start getting both intellisense and compiler errors. Here is an example of the compiler output after updating to 5.7.0. To get it back to a working state, I can just uninstall 5.7.0 and reinstall 5.3.0 with NuGet and it will work again.
C:CodeReposwebapp1srcmain-websiteOrgSpecificVENDOR1VENDOR1_MainMasterPage.master(5): Build (web): Circular file references are not allowed.
C:CodeReposwebapp1srcmain-websiteOrgSpecificVENDOR1VENDOR1_MainMasterPage.master(105): Build (web): Unknown server tag 'uc3:VENDOR1_footer'.
C:CodeReposwebapp1srcmain-websiteMiscPagesOrganizationSelector.aspx(106): Build (web): Unknown server tag 'uc3:VENDOR1_footer'.
C:CodeReposwebapp1srcmain-websiteCommonControlsDataQualityValidationConfirmationButton.ascx(8,0): error BC30560: 'common_controls_yesnomodalpopup_ascx' is ambiguous in the namespace 'ASP'.
C:CodeReposwebapp1srcmain-websiteCommonControlsDataQualityValidationConfirmationButton.ascx(8,0): error BC30560: 'common_controls_yesnomodalpopup_ascx' is ambiguous in the namespace 'ASP'.
C:UsersusernameAppDataLocalTempTemporary ASP.NET Filesroot4ca41222b51c7e2aApp_Web_kqzcmgmk.6.vb(196,0): error BC30560: 'common_controls_yesnomodalpopup_ascx' is ambiguous in the namespace 'ASP'.
C:UsersusernameAppDataLocalTempTemporary ASP.NET Filesroot4ca41222b51c7e2aApp_Web_kqzcmgmk.6.vb(197,0): error BC30560: 'common_controls_yesnomodalpopup_ascx' is ambiguous in the namespace 'ASP'.
C:UsersusernameAppDataLocalTempTemporary ASP.NET Filesroot4ca41222b51c7e2aApp_Web_kqzcmgmk.6.vb(536,0): error BC30560: 'common_controls_yesnomodalpopup_ascx' is ambiguous in the namespace 'ASP'.
Application/development information:
- .Net Framework v4.8
- VB.Net
- ASP.Net Web Site (not web project)
- Visual Studio 2019
Packages requiring update, but causing issues:
- Microsoft.IdentityModel.JsonWebTokens
- Microsoft.IdentityModel.Logging
- Microsoft.IdentityModel.Protocols
- Microsoft.IdentityModel.Protocols.OpenIdConnect
- Microsoft.IdentityModel.Tokens
Troubleshooting steps I’ve tried:
- Deleting Temporary ASP.NET Files
- Deleting intellisense cache (.suo file)
- Deleting entire local project and redownloading from source control
- Trying the same package update on another computer
- Tried different package versions, at least one from nearly all versions of the IdentityModel from 5.4 to 8.0
- Full rebuild (note: clean build is not an option on “Web Sites” template)
- Checking web.config that assemblyBinding entries were correct version
- Removing all web.config assemblyBinding entries
- batch=”false” on compilation tag in web.config
I’m out of ideas…