Skip to content

"Remove unnecessary usings" code action is not working #8237

Closed
@mkarpuk

Description

@mkarpuk

Issue Description

"Remove unnecessary usings" code action does not work.

Steps to Reproduce

  • Add unnecessary using statements to a c# file
  • Trigger "Remove unnecessary using" code action

Expected Behavior

unnecessary using statements are removed

Actual Behavior

error message box appears

Logs

C# log

2025-05-02 13:25:01.284 [info] [Error - 1:25:01 PM] [codeAction/resolve] [LanguageServerHost] System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationArrayTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationConstructedNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationEventSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsParamsArray' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPointerTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPropertySymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationTypeParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
   at System.Reflection.RuntimeModule.GetDefinedTypes()
   at System.Composition.Hosting.ContainerConfiguration.<>c.<WithAssemblies>b__16_0(Assembly a)
   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()
   at System.Composition.TypedParts.TypedPartExportDescriptorProvider..ctor(IEnumerable`1 types, AttributedModelProvider attributeContext)
   at System.Composition.Hosting.ContainerConfiguration.CreateContainer()
   at Microsoft.CodeAnalysis.Host.CodeStyleHostLanguageServices.MefHostExportProvider.Create(String languageName)
   at System.Runtime.CompilerServices.ConditionalWeakTable`2.GetValueLocked(TKey key, CreateValueCallback createValueCallback)
   at Microsoft.CodeAnalysis.Host.CodeStyleHostLanguageServices..ctor(HostLanguageServices hostLanguageServices)
   at Microsoft.CodeAnalysis.Host.CodeStyleHostLanguageServices.Create(HostLanguageServices hostLanguageServices)
   at System.Runtime.CompilerServices.ConditionalWeakTable`2.GetValueLocked(TKey key, CreateValueCallback createValueCallback)
   at Microsoft.CodeAnalysis.Host.CodeStyleHostLanguageServices.GetRequiredMappedCodeStyleLanguageServices(HostLanguageServices hostLanguageServices)
   at Microsoft.CodeAnalysis.RemoveUnnecessaryImports.AbstractRemoveUnnecessaryImportsCodeFixProvider.RemoveUnnecessaryImportsAsync(Document document, CodeActionOptionsProvider fallbackOptions, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.GetChangedSolutionAsync(IProgress`1 progress, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction.cs:line 352
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.ComputeOperationsAsync(IProgress`1 progress, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction.cs:line 306
   at Microsoft.CodeAnalysis.CodeActions.CodeAction.GetOperationsCoreAsync(Solution originalSolution, IProgress`1 progress, CancellationToken cancellationToken) in /_/src/Workspaces/Core/Portable/CodeActions/CodeAction.cs:line 243
   at Microsoft.CodeAnalysis.LanguageServer.Handler.CodeActionResolveHandler.HandleRequestAsync(CodeAction codeAction, RequestContext context, CancellationToken cancellationToken) in /_/src/LanguageServer/Protocol/Handler/CodeActions/CodeActionResolveHandler.cs:line 89
   at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem`1.StartRequestAsync[TRequest,TResponse](TRequest request, TRequestContext context, IMethodHandler handler, String language, CancellationToken cancellationToken)
System.TypeLoadException: Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationArrayTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationConstructedNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationEventSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_IsParamsArray' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPointerTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPropertySymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
System.TypeLoadException: Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationTypeParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
2025-05-02 13:25:01.287 [info] [Error - 1:25:01 PM] Request codeAction/resolve failed.
2025-05-02 13:25:01.287 [info]   Message: Unable to load one or more of the requested types.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationArrayTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationConstructedNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationEventSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationNamedTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsParamsArray' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPointerTypeSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_PartialDefinitionPart' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationPropertySymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
Method 'get_IsExtension' in type 'Microsoft.CodeAnalysis.CodeGeneration.CodeGenerationTypeParameterSymbol' from assembly 'Microsoft.CodeAnalysis.CodeStyle.Fixes, Version=4.8.9.5801, Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
  Code: -32000 
[object Object]

C# LSP Trace Logs

Post the output from Output-->C# LSP Trace Logs here. Requires the `C#` output window log level to be set to `Trace`

Environment information

VSCode version: 1.99.3
C# Extension: 2.72.34
Using OmniSharp: false

Dotnet Information .NET SDK: Version: 9.0.203 Commit: dc7acfa194 Workload version: 9.0.200-manifests.12d79ccf MSBuild version: 17.13.20+a4ef1e90f

Runtime Environment:
OS Name: Windows
OS Version: 10.0.19045
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\9.0.203\

.NET workloads installed:
[aspire]
Installation Source: VS 17.13.35931.197
Manifest Version: 8.2.2/8.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.aspire\8.2.2\WorkloadManifest.json
Install Type: Msi

Configured to use loose manifests when installing new manifests.

Host:
Version: 9.0.4
Architecture: x64
Commit: f57e6dc747

.NET SDKs installed:
9.0.203 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 5.0.14 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 5.0.14 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 8.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
Not set

global.json file:
Not found

Learn more:
https://aka.ms/dotnet/info

Download .NET:
https://aka.ms/dotnet/download

Visual Studio Code Extensions
Extension Author Version Folder Name
code-spell-checker streetsidesoftware 4.0.47 streetsidesoftware.code-spell-checker-4.0.47
copilot GitHub 1.312.0 github.copilot-1.312.0
copilot-chat GitHub 0.26.7 github.copilot-chat-0.26.7
csdevkit ms-dotnettools 1.18.25 ms-dotnettools.csdevkit-1.18.25-win32-x64
csharp ms-dotnettools 2.72.34 ms-dotnettools.csharp-2.72.34-win32-x64
data-workspace-vscode ms-mssql 0.6.1 ms-mssql.data-workspace-vscode-0.6.1
git-graph mhutchie 1.30.0 mhutchie.git-graph-1.30.0
gitlens eamodio 17.0.3 eamodio.gitlens-17.0.3
jsonl-tool mekusuri 0.0.4 mekusuri.jsonl-tool-0.0.4
markdown-all-in-one yzhang 3.6.3 yzhang.markdown-all-in-one-3.6.3
markdown-mermaid bierner 1.28.0 bierner.markdown-mermaid-1.28.0
markdown-preview-github-styles bierner 2.1.0 bierner.markdown-preview-github-styles-2.1.0
mssql ms-mssql 1.31.0 ms-mssql.mssql-1.31.0
ng-template Angular 19.2.4 angular.ng-template-19.2.4
powershell ms-vscode 2025.0.0 ms-vscode.powershell-2025.0.0
prettier-vscode esbenp 11.0.0 esbenp.prettier-vscode-11.0.0
remote-explorer ms-vscode 0.4.3 ms-vscode.remote-explorer-0.4.3
remote-ssh ms-vscode-remote 0.119.0 ms-vscode-remote.remote-ssh-0.119.0
remote-ssh-edit ms-vscode-remote 0.87.0 ms-vscode-remote.remote-ssh-edit-0.87.0
remote-wsl ms-vscode-remote 0.99.0 ms-vscode-remote.remote-wsl-0.99.0
rest-client humao 0.25.1 humao.rest-client-0.25.1
sql-bindings-vscode ms-mssql 0.4.1 ms-mssql.sql-bindings-vscode-0.4.1
sql-database-projects-vscode ms-mssql 1.5.1 ms-mssql.sql-database-projects-vscode-1.5.1
vscode-dotnet-runtime ms-dotnettools 2.3.3 ms-dotnettools.vscode-dotnet-runtime-2.3.3
vscode-eslint dbaeumer 3.0.10 dbaeumer.vscode-eslint-3.0.10
vscode-solution-explorer fernandoescolar 0.9.1 fernandoescolar.vscode-solution-explorer-0.9.1
vscodeintellicode-csharp ms-dotnettools 2.2.3 ms-dotnettools.vscodeintellicode-csharp-2.2.3-win32-x64
wikitext RoweWilsonFrederiskHolme 4.0.1 rowewilsonfrederiskholme.wikitext-4.0.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions